Loop com VB e Flash
\\\\\\ INICIO BLABLABLA \\\\\\
Galera,
Estou desesperado, cidadãos de boa alma, hora de ajudar! kkk
Estou fazendo um CD de busca de empresas com Flash e VB6.
Falta um detalhe, porém TENHO que entregar isso pronto segunda pela manhã.
Se houver alguém interessado em resolver o problema eu descolo uma graninha e passo o link com o material.
\\\\\\ FIM BLABLABLA \\\\\\
Meu flash tem uma função que aguarda a mudança de uma variavel. Quando o VB muda essa variavel, uma função no flash é executada.
Porém, quando eu coloco a mudança de variavel em um LOOP, desejando que a função seja executada n vezes, isso não ocorre. O flash só executa 1 vez.
Vou exibir uma versão simples do meu programa, apenas com a parte que nos interessa:
FLASH
// this function in flash makes a VB call and waits until the variable is set to some value from VB
function CallVBFunction() {
fscommand("Test", "Test"); // function call to VB
keepWaitingForResponse(); // call the flash function
}
// this function doesn’t go ahead until the VBCalling is set from VB
function keepWaitingForResponse() {
_global.intervalID = setInterval(
function () { // this function is called ever 100 ms until the intervalID is cleared
if (VBCalling != undefined) {
VariableReturned(VBCalling);
}
}, 100);
}
// this function is called only after the variable is set from VB
function VariableReturned(value) {
VBCalling = undefined;
// anexa "attach" um Movie Clip article ao scrollHolder e dá-lhe um nome de instancia unico
scrollHolder.attachMovie("article_MC", "article"+i, i+10);
// define a varavel local tMovie para referir o novo article anexado "attached", assim não temos que escrever muito mais
var tMovie = scrollHolder['article'+i];
// posiciona o novo Movie Clip anexado "attached"
tMovie._x = 0;
tMovie._y = tMovie._height * i;
// define o conteudo da text field do novo Movie Clip anexado "attached"
tMovie.articleLabel.text = "Este é o artigo nº" + i;
}
CallVBFunction();
VB
Private Sub Form_Load()
Form1.Width = 13700
Form1.Height = 11000
flaTeste.Movie = App.Path & "\scrollBarMC_Complete.swf"
flaTeste.Left = 0
flaTeste.Top = 0
flaTeste.Width = 13400
flaTeste.Height = 10410
i = 0
Do Until i <> 10
flaTeste.SetVariable "VBCalling", "x"
flaTeste.SetVariable "i", i
i = i + 1
Loop
flaTeste.Play
End Sub
É como se eu fizesse um loop no flash...
Se você para essa aplicação seria estúpido fazer com VB, porém eu coloco variáveis de consulta a banco de dados em cada instancia do article_MC.
Imasters, não sei o que fazer, imploro ajuda!
Abraços
Discussão (5)
Carregando comentários...