Tema: checkbox
Ver Mensaje Individual
  #3  
Antiguo 09-05-2003
Bacterion Bacterion is offline
Miembro
 
Registrado: may 2003
Posts: 91
Reputación: 21
Bacterion Va por buen camino
Claro que sí, pero para hacerlo desacoplado y que puedas usarlo en otras situacione s(osea no ligarlo al CheckBox por aquello de que hoy es checkbox mañana es primavera en el corte inglés (vamos que puede cambiar))

Supon que el formulario a crear es:
TMiMaravillosoForm

Haz, por ejemplo:
Variable o Propiedad o Función (pública) por la que le pases un string a almacenar (por ejemplo, el nombre del checkbox).

Ahora, el truco está en saber que el Sender de un evento es el objeto sobre el cual se realiza la acción (click, drag, etc...)

Llama a este form (supongamos que estamos en la función que crea el Form, por ejemplo, en el OnCheck, que tiene un parámetro Sender).

MiCheckBoxCheck(Sender: TObject);
begin
// un poner
with TMiMaravillosoForm.Create(Self)
try
Caption := TCheckBox(Sender).Text;
MiPropiedadMagica := TCheckBox(Sender).Name;
ShowModal;
finally
free;
end;
end;

Obviemente deberías declarar en TMiMaravillosoForm algo tal que:

TMiMaravillosoForm = class(TForm)
private
// solo si caso b
FNombreAGuardar: string;
public
// a
procedure AsignaNombreAGuardar(const Nombre: string);
// b
property NombreAGuardar: string read FNombreAGuardar write FNombreAGuardar;
// c
NombreAGuardar: string; // antes que esto, mejor b.
end;

Como verás, he usado b, pero con otro nombre...
Responder Con Cita