Delphi - eventos e .ini

 
Vista:

eventos e .ini

Publicado por Eduardo (2 intervenciones) el 23/06/2005 18:40:17
Estoy creando un programa 100% dependiente de archivos ini. En archivo ini se encuentra el nombre de una variable, valor que tomara cuando este activado y valor que tomara uando no. Estos datos los quiero insertar en Runtime a una CheckBox que tomo el valor "activado" cuando le haga click o viseversa. Ahora el problema es que El evento OnClick solo puede ser asignado con el tipo PROCEDURE X(Sender:TObject). Yo quiero asignarle un evento con otro parametro mas. El de cual control es el que se clickeo. La variable "sender" no me sirve para esto. Quiero que el evento me pida otro parametro.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:eventos e .ini

Publicado por Diego Romero (636 intervenciones) el 23/06/2005 19:01:58
Me disculpas pero el parámetro Sender sirve precisamente para eso, para saber qué control disparó el evento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:eventos e .ini

Publicado por Delfino (1216 intervenciones) el 24/06/2005 12:55:21
No se si he entendido bien tu pregunta pero de dos maneras puedes q control se clickeo en una app, con la condicion de q sea un TWinControl:
Screen.ActiveControl;
Form.ActiveControl;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:eventos e .ini

Publicado por beosman (163 intervenciones) el 27/06/2005 13:34:50
Los dos respondiendo y ninguno le contesta...

El parámetro Sender indica qué control es el que disparó el evento. Como es de tipo TObject, todos los controles son sus derivados (por herencia), o sea que si tu CheckBox es el que dispara el evento. para coger si está chequeada o no se hace así:

if (Sender as TCheckBox).Checked then
// lo que sea

También puedes coger esta variable así:

var cb: TCheckBox;
begin
cb := (Sender as TCheckBox);
if cb.Checked then
// lo que sea
end;

Espero que te sirva. Un saludo.

Diego :: beosman
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar