Página 1 de 1
bug fivewin lostfocus
Enviado: 09 Out 2024 12:23
por JoséQuintas
Código: Selecionar todos
#include "FiveWin.ch"
function Main()
local oDlg, oFld, cTest1, cTest2, cTest3, oGet2, oGet3
cTest1 := cTest2 := cTest3 := Space( 30 )
TGet():SetColorFocus( nRGB( 255, 255, 0 ) )
DEFINE DIALOG oDlg SIZE 400, 300
@ 0, 0 FOLDEREX oFld OF oDlg SIZE 200, 150
@ 1, 1 GET cTest1 OF oFld:aDialogs[ 1 ]
@ 2, 1 GET oGet2 VAR cTest2 OF oFld:aDialogs[ 1 ]
oGet2:bLostFocus = { || oFld:SetOption( 2 ), oGet3:SetFocus() }
@ 1, 1 GET oGet3 VAR cTest3 OF oFld:aDialogs[ 2 ]
ACTIVATE DIALOG oDlg CENTERED
return nil
Fonte acima funciona.
tab 1 manda foco pra tab2.
Código: Selecionar todos
#include "FiveWin.ch"
function Main()
local oDlg, oFld, cTest1, cTest2, cTest3, oGet1, oGet2, oGet3
cTest1 := cTest2 := cTest3 := Space( 30 )
TGet():SetColorFocus( nRGB( 255, 255, 0 ) )
DEFINE DIALOG oDlg SIZE 400, 300
@ 0, 0 FOLDEREX oFld OF oDlg SIZE 200, 150
@ 1, 1 GET oGet1 VAR cTest1 OF oFld:aDialogs[ 1 ]
@ 2, 1 GET oGet2 VAR cTest2 OF oFld:aDialogs[ 1 ]
oGet2:bLostFocus := { || oFld:SetOption( 2 ), oGet3:SetFocus() }
@ 1, 1 GET oGet3 VAR cTest3 OF oFld:aDialogs[ 2 ]
oGet3:bLostFocus := { || oFld:SetOption( 1 ), oGet1:SetFocus() }
ACTIVATE DIALOG oDlg CENTERED
return nil
Acrescentei no terceiro get pra voltar pra tab1.
Agora este funciona, mas o outro parou de funcionar.
Em toda lib, tudo igual.
Desde que comecei a tentar GUI, é só achar bug.
Nada mudou em um ano, nem com lib comercial.
Nota: NÃO estou usando versão pirata.
bug fivewin lostfocus
Enviado: 10 Out 2024 11:45
por Kapiaba
Pergunta tonta, o que você quer fazer, é "navegar", entre os GETS dos FOLDERS?
Regards, saludos.
bug fivewin lostfocus
Enviado: 10 Out 2024 12:29
por Kapiaba
Procure no Forum de FiveWin, pelo comando oJump. E use o forum em espanhol no
Inter pois fica dificil entender o que você quer em Inglês.
Código: Selecionar todos
// C:\FWH\SAMPLES\FLQUINT.PRG
#include "FiveWin.ch"
FUNCTION Main()
LOCAL oDlg, oFld, cTest1, cTest2, cTest3, cTest4, oGet1, oGet2, oGet3, oGet4
LOCAL oCursorBtn := TCursor():New(, 'HAND' )
LOCAL aFolder := { "Menu1", "Menu2", "Menu3" }
cTest1 := cTest2 := cTest3 := cTest4 := Space( 30 )
TGet():SetColorFocus( nRGB( 255, 255, 0 ) )
DEFINE DIALOG oDlg SIZE 400, 300
@ 0, 0 FOLDEREX oFld PROMPTS aFolder SIZE 200, 150 TAB HEIGHT 30 ROUND 5 TOP
WITH OBJECT oFld
:lTransparent := .T.
:aGradSel := { { 1.0, 3926784, 16777215 }, { 0.1, 3926784, 16777215 } } // Green
:aGradUnSel := { { 1.0, 16744448, 16777215 }, { 0.1, 16744448, 16777215 } } // Blue
:aGradOver := { { 1.0, 255, 16777215 }, { 0.1, 255, 16777215 } } // Red
:aGradOverUnSel := { { 1.0, 12824535, 16777215 }, { 0.1, 12824535, 16777215 } } // Purple
:aGradDis := { { 1.0, 15790320, 16777215 }, { 0.1, 15790320, 167772 } }
//
:aEnable = { .T., .T., .T., .F. }
:SetOption( 1 )
:Show()
// :DisableTab( 3 ) // idem a :aEnable
:oCursor := oCursorBtn
END
@ 1, 1 GET oGet1 VAR cTest1 OF oFld:aDialogs[ 1 ]
@ 2, 1 GET oGet2 VAR cTest2 OF oFld:aDialogs[ 1 ] ;
VALID IF( GetASyncKey( VK_RETURN ) .OR. ;
GetASyncKey( VK_DOWN ), ;
( oGet1:oJump := oGet2, ;
oFld:SetOption( 2 ), oFld:SetFocus(),;
oFld:Refresh(), .T. ), .T. )
@ 1, 1 GET oGet3 VAR cTest3 OF oFld:aDialogs[ 2 ] ;
VALID IF( GetASyncKey( VK_RETURN ) .OR. ;
GetASyncKey( VK_DOWN ), ;
( oGet3:oJump := oGet4, ;
oFld:SetOption( 3 ), oFld:SetFocus(),;
oFld:Refresh(), .T. ), .T. )
@ 1, 1 GET oGet4 VAR cTest4 OF oFld:aDialogs[ 3 ]
ACTIVATE DIALOG oDlg CENTERED
RETURN NIL
Regards, saludos.
bug fivewin lostfocus
Enviado: 10 Out 2024 14:56
por JoséQuintas
Já postei lá.
Sendo claro
Não sei porque esta merd. funcionou assim, mas funcionou., criar o codeblock antes de usar.
Código: Selecionar todos
bCode := { || ;
xTab:SetOption( nPageNext ), ;
/* xTab:aDialogs[nPageNext ]:SetFocus() */ ;
xTextboxNext:SetFocus() }
xTextbox:bLostFocus := bCode
O problema agora é GET MEMO, que é TMULTIGET
Falta testar acrescentando um GET real.... vou alterar a estrutura do DBF de novo...
É o maior barato, peço suporte, e eu mesmo mostro solução, a deles não funciona kkkk
bug fivewin lostfocus
Enviado: 27 Out 2024 20:08
por SOSSOFT
Uma época comecei a usar HMG 3.5 (se não me engano),
Deu um trabalhão para fazer o que eu queria, daí surgiu uma nova versão, aí tudo que eu havia feito parou de funcionar, não podia ficar pesquisando tudo de novo só para fazer funcionar na versão nova, então tive que manter naquela versão por longo tempo (até hoje), nem sei que versão é a atual, mas tive que manter.
Em resumo cheguei a conclusão que devo manter tudo em modo console, daí tenho controle, não me incomodo, além que fica muito mais rápido e até mais bonito (bem... isso é a minha opinião, é claro)