Página 1 de 1
GET flexível
Enviado: 21 Jan 2009 14:56
por clebervn
É possível eu mudar um GET de lugar após declará-lo

Exemplificando......
Linha1 := 30
Linha2 := 110
@ 120,Linha1 get campo1 .......
@ 120,80 get campo2
@ 120,Linha2 get campo3
ai eu teria uma tecla de função... no meu caso o F9.....q inverte os valores....
Linha1:= 110
Linha2 := 30
ai como faço pro get agora ficar nesta nova posição ??
alguma sugestão

Re: GET flexível
Enviado: 22 Jan 2009 09:04
por clebervn
ou tem como destruir o GET e redeclara-lo ?
Re: GET flexível
Enviado: 22 Jan 2009 09:33
por Toledo
Clebervn, tenta o seguinte:
Código: Selecionar todos
Local e1:="GET 1", e2:="GET 2"
@ 20,30 GET oGet1 VAR e1 ;
STYLE WS_DLGFRAME ;
SIZE 260, 26
@ 20,110 GET oGet2 VAR e2 ;
STYLE WS_DLGFRAME ;
SIZE 260, 26
@ 20,150 BUTTON "Mover Gets" SIZE 150, 32 ON CLICK {||MudaGet()}
...
function MudaGet()
oGet1:nTop:=110
oGet1:Move()
oGet2:nTop:=30
oGet2:Move()
return Nil
A propriedade
nTop do Get corresponde a linha, e você pode usar
nLeft para mudar a coluna.
Abraços,
Re: GET flexível
Enviado: 22 Jan 2009 10:21
por clebervn
vou tentar , obg.... só não entendi a declaração das variáveis pois elas não mudam de conteúdo mesmo... tipo e1 vai ser sempre GET1...
Re: GET flexível
Enviado: 22 Jan 2009 10:23
por clebervn
testei agora e funcionou, mudou de lugar sim... mas só falta uma coisa pra ficar perfeito..... mudar a ordem da digitação tb..... pois ele foi pra baixo mas continua pedindo o campo antes.....
tem como

obg
Re: GET flexível
Enviado: 22 Jan 2009 10:45
por clebervn
Simplesmente declarei um ID para cada GET e nas validações fui pondo o foco para o próximo campo dependendo ou não do botão ter sido teclado, ou seja, com uma variável lógica de controle....
se precisarem posto aqui o trecho.... tks !
Re: GET flexível
Enviado: 22 Jan 2009 11:29
por clebervn
Aproveitando o assunto... como mudo de GET gostaria de mudar o titulo do meu DIALOG, tem como

o meu inicial esta assim :
private vtitulo := "teste"
INIT DIALOG oDlg TITLE vTitulo ;
ICON oIcon ;
AT 40,167 SIZE nLargTela,nAltTela CLIPPER NOEXIT ;
STYLE WS_POPUP+WS_CAPTION+DS_CENTER+WS_SYSMENU ;
ON EXIT {|| CancTab() } ;
ON INIT {|| keyb_event(27),nNro_pro:=0 }
ao teclar a tecla correspondente para mudar meus gets, gostaria de puder altera o titulo tb.
Re: GET flexível
Enviado: 22 Jan 2009 16:32
por clebervn
Solução :
oDlg:TITLE:="TESTE"
setwindowtext(oDlg:Handle,oDlg:title)
oDlg:SHOW()
Re: GET flexível
Enviado: 23 Jan 2009 18:49
por esbasso
para ver como a HWGUI não é fraca vou te mostrar formas diferente de faze isso tudo acima
GET FLEXIVEL
Thisform:oEdit2:NTOP:= Thisform:oEdit3:NTOP + 50
thisform:oEdit2:MOVE()
setwindowpos(Thisform:oEdit2:HANDLE ,Thisform:oEdit3:HANDLE ,1,0,0)
AQUI VOCE troca a pósição dos GETS O GET 2 passa a GET 3, e o GET 3 passa a 2
ALTERAR O TITULODE UMA JANELA
Faça simplesmente oDlg:caption := "NOVO TITULO"