Oi
Testei a dica do Alessandro e me perdi no "vmenu1[1]:=" que troquei por "vmenu[1]:=" e deu erro da mesma forma.
A idéia do Marcelo é justamente o q tentei e as funções vão sendo executadas.
Segue abaixo o SAMPLES\TESTMNU.PRG onde inclui 2 funções para tentar ver funcionando. E acontece igual meu programa, a função F_Teste() e Teste() são executadas na tela pra depois aparecer a janela sem o menu
function BuildMenu()
local oMenu
local cAction
USE Menu
MENU oMenu
while ! Eof()
do case
case Menu->Type == 0
MENU
case Menu->Type == 1
if ! Empty( cAction := Menu->Action )
if Menu->nVirtKey == 0
MENUITEM ( AllTrim( Menu-Text ) ) ;
BLOCK &( cAction ) ;
MESSAGE ( AllTrim( Menu->Msg ) )
else
MENUITEM ( AllTrim( Menu-Text ) ) ;
BLOCK &( cAction ) ;
MESSAGE ( AllTrim( Menu->Msg ) ) ;
ACCELERATOR Menu->nState, Menu-nVirtKey
endif
else
MENUITEM ( AllTrim( Menu->Text ) ) ;
MESSAGE ( AllTrim( Menu->Msg ) )
endif
case Menu->Type == 2
SEPARATOR
case Menu->Type == 3
ENDMENU
endcase
SKIP
end
ENDMENU
USE
return oMenu
//------------------------------------------------//
function f_teste()
msginfo("teste")
return nil
*--------------------------------------------------
function teste1()
msginfo("teste 1")
return nil
*--------------------------------------------------
Montei o MENU.DBF com
TYPE ACTION TEXT NVIRTKEY MSG
0 "" Tabela 0
1 F_Teste() Tabela Teste 0
1 Teste1() Tabela Teste1 0
Agradeço a ajuda de todos
Mas encalhei nesse ponto !!!
Obrigada