PDA

Ver la Versión Completa : Inicializar objeto TColumn...??


ibarrols
30-05-2003, 15:06:16
Hola Foro!!!


Tenemos un procedimiento, que realiza lo siguiente:

procedure TForm1.DBGrid2CellClick(Column: TColumn);
begin
showMessage('HOla');
end;


Estando en otro procedimiento queremos llamar al anterior:

procedure TForm1.DBGrid1CellClick(Column: TColumn);
var
col : TColumn;
begin
DBGrid2CellClick(col);
end;

El problema es el siguiente:

Creo variables de tipo TColumn solo porque el metodo me lo exige como parametro pero nunca necesito utilizarlas, quedandome un mensaje warning, de que no estan siendo inicializadas las variables...
Pregunto:
*hay otra manera de llamar al procedimiento?
*como se inicializa una variable de tipo TColumn?

Muchas Gracias.....

__cadetill
30-05-2003, 15:57:48
Bueno, tienes una alternativa y es poner el codigo del evento en un procedimiento y llamar a este en lugar del evento


procedure TForm1.MiProcedure;
begin
ShowMessage('Hola');
end;

procedure TForm1.DBGrid2CellClick(Column: TColumn);
begin
MiProcedure
end;

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
MiProcedure;
end;



Espero te sirva

roman
30-05-2003, 18:00:39
La respuesta de cadetill es la más indicada ya que los manejadores de eventos no están pensados para ser llamados directamente. Es más claro y organizado un código que utiliza los eventos prácticamente sólo para llamar a las rutinas que hacen el trabajo.

Aún así, en tu caso particular, no necesitas crear la columna ya que no la utilizas dentro del evento. Basta que llames el evento así:


DBGrid2CellClick(nil);


// Saludos