PDA

Ver la Versión Completa : componentes visuales y speedbutton


JaMFrY
27-02-2004, 21:04:33
Tengo una aplicacion que la cree hace tiempo i la deje parada, ahora estoi interesado en hacer una nueva version de mi aplicacion y decidi poner componentes visuales para mejorarla un poco y hacerla mas atractiba, en especial los botones.

La aplicacion tiene speedbutton con codigos por ejemplo como este:

frmMain.strStatus:='Intentando poner en ' + LowerCase(TSpeedButton(Sender).Caption) + ' capslock...';
frmMain.SendCommand(COMANDO_CAPS_LOCK,IntToStr((Sender as TSpeedButton).Tag));

El problema biene al poner el codigo en formato del componente que seria este:

frmMain.strStatus:=''Intentando poner en ' + LowerCase(TFlatButton(Sender).Caption) + ' capslock...'';
frmMain.SendCommand(COMMANDO_CAPS_LOCK,IntToStr((Sender as TFlatButton).Tag));

en la form tengo 2 speedbutton con el mismo codigo y lo que hace este codigo ((Sender as TFlatButton).Tag)) es saver que boton pulsa el usuario, activar o desactibar el bloq mayusculas, pero cuando lo pongo en codigo del componente no funciona :confused:, nada mas me lo desactiva no me lo actiba el bloq mayusculas!

jachguate
27-02-2004, 21:41:30
No te lo desactiva porque nunca cambias el valor del Tag del Sender

Hasta luego.

;)

JaMFrY
28-02-2004, 12:16:42
No se que quieres decir, pero se una cosa clara. Cuando pongo el TFlatButton por el TSpeedButton no hace la funcion que tiene que hacer, no detecta el tag :(

__cadetill
28-02-2004, 12:40:55
No se que quieres decir
Lo que quiere decir el amigo Juan Antonio es que, tu controlas una propiedad (Tag) para realizar una acción que no se actualiza (almenos en las 2 lineas de código mostradas). Al no actualizarse (la propiedad), SIEMPRE vale lo mismo por lo que SIEMPRE te realiza la misma acción (desactivar el Bloq Mayus.)

JaMFrY
28-02-2004, 15:25:22
Y como puedo solucionarlo? :confused:

eduarcol
28-02-2004, 15:39:41
Debes Asignarle un nuevo valor al TAG, asi como tambien debe cambiar el caption del boton...