Page 1 of 1

Disabled+ mouseover

Posted: Sat Nov 24, 2007 4:32 pm
by Antonio Martinez
Hola a todos,

Cuando un control esta inactivo (disabled), por las pruebas que he hecho, no recibe mensajes WM_movemouse (o como se llame). Me parece que esto es filosofia Windows y comportamiento Windows... pero no se podria cambiar este comportamiento? Lo digo porque creo que resulta muy interesante que cuando un control esta disabled, por ejemplo un button, pudiera mostrar un tooltip... porque una cosa es que este disabled y otra que muestre lo que haria si estuviera encendido (tooltip)... incluso se podria adaptar el tooltip para que indicase el motivo de por que esta apagado.

Saludos

Posted: Sat Nov 24, 2007 5:21 pm
by Antonio Linares
Antonio,

Sería interesante como dices, pero no es algo simple de implementar, ya que Windows está hecho así.

Es preferible que lo dejes activo y que le quites su acción.

oBtn:bAction = { || nil }

y que más tarde se la vuelvas a asignar

Posted: Sat Nov 24, 2007 5:35 pm
by Antonio Martinez
Antonio,
Antonio Linares wrote:Antonio,

Sería interesante como dices, pero no es algo simple de implementar, ya que Windows está hecho así.

Es preferible que lo dejes activo y que le quites su acción.

oBtn:bAction = { || nil }

y que más tarde se la vuelvas a asignar
Una de las cosas que me gustan de los entornos GUI es que se hacen mas intuitivos para el usuario.
Cuando el usuario ve que un boton esta apagado enseguida comprende que esa opcion existe pero no esta disponible... y no tiene que pinchar para saber que en determinado punto esta inactiva.
Por ejemplo, en un browse de un plan de cuentas, cuando una cuenta tiene movimiento contable, el boton de borrar cuenta aparece apagado, si la cuenta no tiene movimiento aparece encendido... es una forma, a mi modo de ver muy clara de saber por un lado que la cuenta tiene movimiento y por otro que la puede borrar o no.

Saludos

Posted: Sat Nov 24, 2007 6:27 pm
by Antonio Linares
Si, pero el problema es el que comentas, que al estar "disabled" no recibe eventos y entonces no se le puede poner un tooltip

Posted: Fri Nov 30, 2007 3:52 pm
by Antonio Martinez
Antonio Linares wrote:Si, pero el problema es el que comentas, que al estar "disabled" no recibe eventos y entonces no se le puede poner un tooltip
Se me ocurre pensar que cuando un control este disabled, habria que controlar las posiciones del raton a ver si estan sobre un control disabled y si es asi mostra el tooltip de ese control.... Quiza esto habria que organizarlo en la ventana contenedora window/dialog... no se si mexplico.... o quiza lo que digo no tenga sentido...

Saludos

Posted: Fri Nov 30, 2007 3:56 pm
by Antonio Linares
Antonio,

Si tiene sentido lo que comentas, lo que ocurre es que no es algo simple de implementar.

Y además puede enlentecer el movimiento del ratón, pues constantemente habría que estar comprobando encima de que control está y en que estado está ese control

Posted: Fri Nov 30, 2007 4:04 pm
by Antonio Martinez
Antonio Linares wrote:Antonio,

Si tiene sentido lo que comentas, lo que ocurre es que no es algo simple de implementar.

Y además puede enlentecer el movimiento del ratón, pues constantemente habría que estar comprobando encima de que control está y en que estado está ese control
Antonio, gracias por tu atencion.
Probablemente solo tendria sentido implementarlo si:
1. Hubiera una mayor demanda de gente que lo pidiera... y parece que no es el caso; parece que la gente no lo necesita...
2. Implementarlo de manera muy "fina" para evitar ralentizaciones.

Saludos

Posted: Thu Dec 06, 2007 10:32 am
by Antonio Martinez
Antonio Linares wrote:Antonio,

Si tiene sentido lo que comentas, lo que ocurre es que no es algo simple de implementar.

Y además puede enlentecer el movimiento del ratón, pues constantemente habría que estar comprobando encima de que control está y en que estado está ese control
He conseguido ponerle ToolTip a los controles disabled :)
He necesitado: ChildWindowFromPoint(), oWndFromHwnd(), oControl:lActive... ha sido mas bien facil...
Como no me iba con los tooltip de Window.prg he utilizado Ajtip... y la cosa va de muerte.

Saludos