SetGetColorFocus
SetGetColorFocus
Buenos días.
Intento cambiar el color de los GET,s al posicionar sobe ellos mediante la función SetGetColorFocus() colocada en el programa principal. Me da el siguiente error de compilación:
Error: Unresolved external '_HB_FUN_SETGETCOLORFOCUS' referenced from
Necesito ayuda.
Intento cambiar el color de los GET,s al posicionar sobe ellos mediante la función SetGetColorFocus() colocada en el programa principal. Me da el siguiente error de compilación:
Error: Unresolved external '_HB_FUN_SETGETCOLORFOCUS' referenced from
Necesito ayuda.
Saludos. Fernando
- FranciscoA
- Posts: 1964
- Joined: Fri Jul 18, 2008 1:24 am
- Location: Chinandega, Nicaragua, C.A.
Re: SetGetColorFocus
Hola Fernando.
Que version usas?
Esta function esta disponible desde Octubre 2007 segun WhatNews.
En mi version 1204 esto trabaja bien, desde Function Main(): SetGetColorFocus( RGB(252,232,191) ) //color fondo de gets cuando tienen el foco
Tambien puedes intentar, en cada ventana, con:
Saludos.
Que version usas?
Esta function esta disponible desde Octubre 2007 segun WhatNews.
En mi version 1204 esto trabaja bien, desde Function Main(): SetGetColorFocus( RGB(252,232,191) ) //color fondo de gets cuando tienen el foco
Tambien puedes intentar, en cada ventana, con:
Code: Select all
AEval( oWndChild:aControls,{|o| if(o:ClassName()=="TGET",;
( o:bGotFocus := {|o|o:SetColor( RGB(0,0,0), RGB(252,232,191) )} ,;
o:bLostFocus := {|o|o:SetColor( CLR_BLACK, CLR_WHITE )} ),) } )
Francisco J. Alegría P.
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Re: SetGetColorFocus
Muchas gracias a los dos por contestar.
Tengo la versión 7.07 de julio de 2007. En la ayuda suministrada aparece la función, por lo que he supuesto que está disponible.
Francisco he intentado lo que me dices y me da el siguiente error
lo sigo intentando
Tengo la versión 7.07 de julio de 2007. En la ayuda suministrada aparece la función, por lo que he supuesto que está disponible.
Francisco he intentado lo que me dices y me da el siguiente error
Code: Select all
Application
===========
Path and name: D:\Personal\peritoprueba\perito.Exe (32 bits)
Size: 672,256 bytes
Time from start: 0 hours 0 mins 5 secs
Error occurred at: 16-07-2014, 17:38:09
Error description: Error BASE/2017 Error de argumento: AEVAL
Args:
[ 1] = U
[ 2] = B {|| ... }
Stack Calls
===========
Called from: => AEVAL(0)
Called from: D:\Personal\peritoprueba\PRG\perito32.prg => MAIN(199)
Saludos. Fernando
- FranciscoA
- Posts: 1964
- Joined: Fri Jul 18, 2008 1:24 am
- Location: Chinandega, Nicaragua, C.A.
Re: SetGetColorFocus
Fernando:
Creo que no expliqué bien. Su uso es en cada dialog o ventana, segun el codigo de ejemplo siguiente:
Saludos.
Creo que no expliqué bien. Su uso es en cada dialog o ventana, segun el codigo de ejemplo siguiente:
Code: Select all
Function Recibo()
local oDlg, nRcaja,dFecha
DBSELECTAREA("RCAJAG")
DEFINE DIALOG oDlg RESOURCE "GRABAR" TITLE "Prueba"
REDEFINE GET oRcaja VAR nRcaja ID 101 OF oDlg PICTURE "@!"
REDEFINE GET oFecha VAR dFecha ID 102 OF oDlg
REDEFINE BUTTONBMP ID 309 OF oDlg BITMAP "ACEPTAR" TEXTRIGHT ACTIO MsgInfo("Hola")
REDEFINE BUTTONBMP ID 310 OF oDlg BITMAP "CANCELAR" TEXTRIGHT ACTION ( oDlg:End() )
AEval( oDlg:aControls,{|o| if(o:ClassName()=="TGET",;
( o:bGotFocus := {|o|o:SetColor( RGB(0,0,0), RGB(252,232,191) )} ,;
o:bLostFocus := {|o|o:SetColor( CLR_BLACK, CLR_WHITE )} ),) } )
ACTIVATE DIALOG oDlg CENTERED
RETURN( NIL )
Francisco J. Alegría P.
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Re: SetGetColorFocus
Amigos
Se puede hacer lo mismo para BTNBMP que cambie de color el texto cuando el mouse está sobre el botón
He hecho esto:
Se pone en azúl, pero no se como volverlo a negro cuando pasa al otro.
Gracias por la ayuda
Saludos,
Adhemar
Se puede hacer lo mismo para BTNBMP que cambie de color el texto cuando el mouse está sobre el botón
He hecho esto:
Code: Select all
REDEFINE BTNBMP oBtn 101 OF oDlg RESOURCE "Boton1",Nil,Nil,"Boton2" PROMPT "Aceptar" ACTION MiFuncion()
REDEFINE BTNBMP oBtn 102 OF oDlg RESOURCE "Boton1",Nil,Nil,"Boton2" PROMPT "Cancelar" ACTION oDlg:End()
oBtn:bMMoved:= {|| oBtn:SetColor( CLR_BLUE ) }
Gracias por la ayuda
Saludos,
Adhemar
Saludos,
Adhemar C.
Adhemar C.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: SetGetColorFocus
Adhemar,
para conseguir esa funcionalidad tienes que usar:
#define WM_MOUSELEAVE 675
#define TME_LEAVE 2
Desde el Método MouseMove( nRow, nCol, nFlags ) tienes que llamar a:
TrackMouseEvent( ::hWnd, TME_LEAVE )
Desde el método HandleEvent( nMsg, nWParam, nLParam )
if nMsg == WM_MOUSELEAVE
return ::MouseLeave( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )
endif
Y en MouseLeave() se restaura el color que desees.
Busca por WM_MOUSELEAVE en las Classes de FWH y verás como lo usamos
para conseguir esa funcionalidad tienes que usar:
#define WM_MOUSELEAVE 675
#define TME_LEAVE 2
Desde el Método MouseMove( nRow, nCol, nFlags ) tienes que llamar a:
TrackMouseEvent( ::hWnd, TME_LEAVE )
Desde el método HandleEvent( nMsg, nWParam, nLParam )
if nMsg == WM_MOUSELEAVE
return ::MouseLeave( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )
endif
Y en MouseLeave() se restaura el color que desees.
Busca por WM_MOUSELEAVE en las Classes de FWH y verás como lo usamos
Re: SetGetColorFocus
Gracias Antonio
He modificado el método:
Al compilar me da este error
Gracias por la ayuda
Saludos,
Adhemar
He modificado el método:
Code: Select all
METHOD MouseLeave( nRow, nCol, nFlags ) CLASS TBtnBmp
::lMOver = .F.
::Refresh()
::SetColor( CLR_BLACK ) //Agregada
return nil
Code: Select all
Error description: Error BASE/1003 No existe la variable: SUPER
Stack Calls
===========
Called from: D:\Sistemas\RRHH\DATA\PRG\btnbmp.prg => TBTNBMP:SETCOLOR( 0 )
Called from: D:\Sistemas\RRHH\DATA\PRG\btnbmp.prg => TBTNBMP:NEWBAR( 0 )
Called from: D:\Sistemas\RRHH\DATA\PRG\RRHH.PRG => MAIN( 0 )
Saludos,
Adhemar
Saludos,
Adhemar C.
Adhemar C.
Re: SetGetColorFocus
En el fuente cambia todos los por
Code: Select all
Super
Code: Select all
::Super
Re: SetGetColorFocus
Buenos días.
Muchas gracias a todos. Pruebo y ya les contaré.
Un saludo
Muchas gracias a todos. Pruebo y ya les contaré.
Un saludo
Saludos. Fernando
Re: SetGetColorFocus
Francisco.Fernando:
Creo que no expliqué bien. Su uso es en cada dialog o ventana, segun el codigo de ejemplo siguiente:
Te entendí mal, disculpas. Funciona correctamente.
Un saludo. Fernando
Saludos. Fernando
- joseluisysturiz
- Posts: 2024
- Joined: Fri Jan 06, 2006 9:28 pm
- Location: Guatire - Caracas - Venezuela
- Contact:
Re: SetGetColorFocus
Probastes usando al princio de los prg esto.? saludos...fergonm wrote:Buenos días.
Intento cambiar el color de los GET,s al posicionar sobe ellos mediante la función SetGetColorFocus() colocada en el programa principal. Me da el siguiente error de compilación:
Error: Unresolved external '_HB_FUN_SETGETCOLORFOCUS' referenced from
Necesito ayuda.
TGet():lDisColors := .f.
Dios no está muerto...
Gracias a mi Dios ante todo!
Gracias a mi Dios ante todo!