LIMITAÇÃO VISUAL LIB OU BUG ?!? :(
Enviado: 25 Nov 2006 14:37
Pessoal olá td bem, estou mudando a interface do meu sistema para um visual segundo minha opinião um pouco melhor usando a lib Visual Lib 2.0, o q ocorre é o seguinte tenho um PRG chamado Menu de onde monto a interface e chamo as demais funções do sistema e ele esta da seguinte maneira:
* * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Modulo....: Modulo principal do sistema
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
#include "inkey.ch"
#include "visual2.ch"
MEMVAR ...... Declaracoes
.
.
.
**********************
PROCEDURE PRINCIPAL
LOCAL ..... Definicoes das Var. Locais
.
.
.
FreeTslice(20) // Para consumir menos processamento
REQUEST DBFCDX
RDDSETDEFAULT('DBFCDX')
__KILLREAD()
PUBLIC .... Variaveis Publicas
.
.
.
Desktop("","W+/B") //Fun‡Æo que inicializa a Visual Lib
mBar := NewBarMenu()
mAtend := NewDownMenu() ; mCad := NewDownMenu()
.
. Sao Definidos 6 Menus com os 2 acima
.
smAtd_Vend := NewDownMenu() ; mAtd_Orc := NewDownMenu()
.
.
. Sao Definidos 62 SubMenus com os 2 acima
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Atende" , "Atendimento ao Cliente" , mAtend )
AddDownItem( mAtend, "......." , "Mensagem do SubMenu" , {|| Funcao1()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Cadastros" , "Cadastros do Sistema" , mCad )
AddDownItem(mCad, "......." , "Mensagem do SubMenu" , {|| Funcao2()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Movimento " , "Movimenta‡Æo do Estoque" , mMoviment )
AddDownItem(mMoviment, "......." , "Mensagem do SubMenu" , {|| Funcao3()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Util" , "Utilit rios do Sistema" , mUtilit )
AddDownItem( mUtilit, "......." , "Mensagem do SubMenu" , {|| Funcao5()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*----------------------- TERMINOU OS MENUS E SUBMENUS -----------------------*
While .T.
BarMenu( mBar )
IF LastKey() = K_ESC
cTela := SAVESCREEN(areageral)
Param()
Final := MsgBox2( "Deseja Sair do Sistema ?", "SAIR",5,"Sim","Nao" )
If Final = 2 ; loop ; endif
Exit
Endif
End
SETCOLOR("")
return nil
O q esta acontecendo é que se acrescento mais submenus ou itens e vou compilar da o erro C3022 Too many external references
E eu não sei como proceder pois tentei fazer o seguinte definir os Menus em um outro PRG mas ele naum aceita.
Alguém já passou por isso ou tem alguma idéia?
Utilizo o Clipper 5.2 e Blinker 7.0
Vlw, agradeço desde já quem puder ajudar.
* * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Modulo....: Modulo principal do sistema
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
#include "inkey.ch"
#include "visual2.ch"
MEMVAR ...... Declaracoes
.
.
.
**********************
PROCEDURE PRINCIPAL
LOCAL ..... Definicoes das Var. Locais
.
.
.
FreeTslice(20) // Para consumir menos processamento
REQUEST DBFCDX
RDDSETDEFAULT('DBFCDX')
__KILLREAD()
PUBLIC .... Variaveis Publicas
.
.
.
Desktop("","W+/B") //Fun‡Æo que inicializa a Visual Lib
mBar := NewBarMenu()
mAtend := NewDownMenu() ; mCad := NewDownMenu()
.
. Sao Definidos 6 Menus com os 2 acima
.
smAtd_Vend := NewDownMenu() ; mAtd_Orc := NewDownMenu()
.
.
. Sao Definidos 62 SubMenus com os 2 acima
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Atende" , "Atendimento ao Cliente" , mAtend )
AddDownItem( mAtend, "......." , "Mensagem do SubMenu" , {|| Funcao1()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Cadastros" , "Cadastros do Sistema" , mCad )
AddDownItem(mCad, "......." , "Mensagem do SubMenu" , {|| Funcao2()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Movimento " , "Movimenta‡Æo do Estoque" , mMoviment )
AddDownItem(mMoviment, "......." , "Mensagem do SubMenu" , {|| Funcao3()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*---------------------------------------------------------------------------*
AddBarItem( mBar, "&Util" , "Utilit rios do Sistema" , mUtilit )
AddDownItem( mUtilit, "......." , "Mensagem do SubMenu" , {|| Funcao5()})
.
. Sao Definidos Sub-Menus e Itens de Sub-Menus
.
.
*----------------------- TERMINOU OS MENUS E SUBMENUS -----------------------*
While .T.
BarMenu( mBar )
IF LastKey() = K_ESC
cTela := SAVESCREEN(areageral)
Param()
Final := MsgBox2( "Deseja Sair do Sistema ?", "SAIR",5,"Sim","Nao" )
If Final = 2 ; loop ; endif
Exit
Endif
End
SETCOLOR("")
return nil
O q esta acontecendo é que se acrescento mais submenus ou itens e vou compilar da o erro C3022 Too many external references
E eu não sei como proceder pois tentei fazer o seguinte definir os Menus em um outro PRG mas ele naum aceita.
Alguém já passou por isso ou tem alguma idéia?
Utilizo o Clipper 5.2 e Blinker 7.0
Vlw, agradeço desde já quem puder ajudar.