Página 1 de 3
Realce no botão
Enviado: 06 Out 2009 11:08
por clebervn
Supor que na minha tela existam 5 botões cada qual executando uma tarefa.
Se clico, por exemplo, no terceiro, ele abre um grid de um cadastro qq.
Gostaria de saber como faço pra realçar esse botão dos demais pro usuário saber q foi esse q ele clicou.
Provavelmente se eu não estiver errado, deve ser algo a por no ON CLICK... gostaria de poder mudar a borda ou cor ou qq coisa q o diferencie.
Alguém pode me dar um Help.
ABC
Re: Realce no botão
Enviado: 06 Out 2009 14:47
por sygecom
Em alguns caso eu apenas dou um oButton:Disable() e quando a janela fecha volto o botão com: oButton:Enable(), mas em outros caso pode mudar a COR também, com: oButton:SetColor( tcolor, bcolor )
Re: Realce no botão
Enviado: 04 Jun 2010 11:36
por gralak
caro amigo sygecom eu utilizei o comando do setcolor porem nao funcionou
a minha realidade e a seguinte
eu gostaria de trocar a cor do botao quando o cliente esta com o foco nele isso e possivel
vlw te ++++
Re: Realce no botão
Enviado: 05 Jun 2010 03:09
por sygecom
É possivel sim, veja um exemplo usando BUTTONEX:
Código: Selecionar todos
@ 375,290 BUTTONEX btnOk CAPTION "&Confirmar" SIZE 100, 38 ;
TOOLTIP "Salvar o Lançamento";
BITMAP (HBitmap():AddFile('res\ok.bmp')):handle ;
ON CLICK {|| Salva_Receber() };
ON GETFOCUS {|| MUDA_COR_FOCO() }; // aqui fica sabendo que o BUTTONEX recebeu o foca
STYLE WS_TABSTOP
Re: Realce no botão
Enviado: 18 Jun 2010 17:17
por clebervn
eu to usando assim ....
Código: Selecionar todos
@ 020,050 BUTTONEX oButx CAPTION "&Cálculos" STYLE WS_TABSTOP+SS_NOTIFY SIZE 200,40 TOOLTIP "" ;
ON CLICK {|| MudaCor('oButx'), MenuCal00(), CorAntiga('oButx') }
FUNCTION MudaCor(xBotao)
vcomando := xBotao+":SETCOLOR(x_RED)"
&vcomando
RETURN .T.
FUNCTION CorAntiga(xBotao)
vcomando := xBotao+":SETCOLOR(x_BLACK)"
&vcomando
RETURN .T.
qod clico ele muda a cor da letra, qdo sai do MenuCal00, executa a proxima função mas nao retorna a letra em preto, como no exemplo acima.
Re: Realce no botão
Enviado: 19 Jun 2010 21:53
por sygecom
Olá clebervn,
Acredito que nessa versão que você usa o Buttonex ainda não tinha mudança de cores, apensar disso eu tentaria algo assim:
Código: Selecionar todos
@ 020,050 BUTTONEX oButx CAPTION "&Cálculos" STYLE WS_TABSTOP+SS_NOTIFY SIZE 200,40 TOOLTIP "" ;
ON CLICK {|| MudaCor(oButx,x_RED), MenuCal00(), MudaCor(oButx,x_BLACK) }
FUNCTION MudaCor(oOBJ,nCOR)
oOBJ:SETCOLOR(nCOR)
oOBJ:REFRESH()
RETURN .T.
Fiz editando no post mesmo, nem testei....
Re: Realce no botão
Enviado: 12 Nov 2010 10:30
por Riggns
Bom dia,
Estou precisando muito fazer a mesma coisa que o amigo clebervn fez, alterando a cor do foco de um botão ou mesmo realçando, tentei com o codigo do Leonardo, mas da erro, o ON GETFOCUS so funciona quando é na inicialização de um form, em um botão não da certo, o que devo fazer? é preciso atualizar alguma coisa?
Grato
Re: Realce no botão
Enviado: 12 Nov 2010 12:13
por anacatacombs
Talvez sim, qual versão da Hwgui vc está usando??
Re: Realce no botão
Enviado: 12 Nov 2010 15:05
por Riggns
Usamos a 2.16
Re: Realce no botão
Enviado: 13 Nov 2010 09:03
por esbasso
ISSO ia para ficar perfeito é necessario adicionar o metodo lostfocus ao BUTTON
então ficaria assim
@ 597,181 BUTTONEX oButtonex1 CAPTION "troca cores" SIZE 183,38 ;
STYLE WS_TABSTOP NOTHEMES ;
ON GETFOCUS {|value,This| This:SetColor( 255, 12345678, .t.) } ;
ON LOSTFOCUS {|value,This| this:bcolor:=nil, this:setcolor(0,NIL,.t.)} }
TAMBEM é necessio remover o THEMA DO BOTTÃO para poder colorir ele
IREI ADICIONAR O LOSTFOCUS NA LIB
Re: Realce no botão
Enviado: 13 Nov 2010 10:37
por gralak
OK ESBASSO assim que vc colocar o evento na lib posta pra gente poder atualizar pelo CVS
ok
Re: Realce no botão
Enviado: 21 Nov 2010 20:48
por janio
Basso,
Nessa nossa dura vida de programador onde muitas das vezes (ou sempre, no meu caso) temos que aprender sozinhos, a falta de um manual, usamos coisas que não sabemos exatamente para que funciona ou às vezes não temos a noção exata de quando ou em que situação, exatamente, determinado recurso deve ser usado. Olhando essa última mensagem postada por vc, observei que quase sempre vc usa entre as barras
pipe value,this nos parâmetro de algum método de alguns objetos. tipo:
ON GETFOCUS {|
value,This| This:SetColor( 255, 12345678, .t.) } ;
Outros talvez usassem apenas:
ON GETFOCUS {|| SetColor( 255, 12345678, .t.) } ;
O fato é que em exemplos postados por outras pessoas, dificilmente vejo essa utilização.
A pergunta é:
Quando usar
value,this ?

´
Re: Realce no botão
Enviado: 25 Nov 2010 14:18
por esbasso
veja bem
ON GETFOCUS {|value,This| This:SetColor( 255, 12345678, .t.) } ;
os eventos passam parametros
e tem os parametros que voce quer passar aos eventos
os parametros são passados aqui |value,This|
cada objeto e SEUS eventos tem seus parametros
o This que eu uso é sempre o parametro passado como referencia ao OBJETO EM SI
então neste caso o seria o evento GETFOCUS do botao, que passa dois parametros o value e o objeto
no caso do botao o value não importa mas o This é uma referencia ao objeto
this:setcolor seria a mesma coisa que fazer o obotao:setcolor
Re: Realce no botão
Enviado: 21 Jan 2011 10:46
por gralak
Iai pessoal eu atualizei a versão da HWGUI via CVS mas quando eu compilo meu exemplo para tentar usar o metodo
GETFOCUS() ou LOSTFOCUS() da erro de compilação...
Alguém poderia me dizer onde eu econtro a versão da hwgui com esses metodos na biblioteca

Re: Realce no botão
Enviado: 09 Fev 2011 12:11
por gralak

????????????????
Alguém pode ajudar
