Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Colocar un título y asociar evento en TStringGrid (https://www.clubdelphi.com/foros/showthread.php?t=68740)

GerTorresM 03-07-2010 18:40:49

Colocar un título y asociar evento en TStringGrid
 
Hola a todos:

La situación del día de hoy es la siguiente

estoy creando un TStringGrid mediante código de la siguiente forma

Código Delphi [-]
    self.ListadoPredios_temporal:= TStringGrid.Create(self);
    with self.ListadoPredios_temporal do
     begin
       top:= 20;
       left:= 20;
       Height:= 300;
       Width:= 117;
       FixedCols:= 0;
       FixedRows:= 1;
       ColCount:= 1;
       DefaultColWidth:= 94;
       DefaultRowHeight:= 17;
       Parent:= self;
     end;

al ejecutar el código en efecto me crea el objeto, ahora lineas mas abajo coloco el título correspondiente

Código Delphi [-]
  Self.ListadoPredios_temporal.Cells[0,0]:= 'Código Predio';

y es ahí cuando me surge las primeras preguntas:

¿ si de hecho deje FixedRows:= 1, para que me dejara en alto el título, por que no o hace ? y Cómo puedo dejar centrado el título?.

y como tercera pregunta me surge la siguiente:

¿Como puedo asociar un método (procedimiento) al evento onClick del objeto?

Adjunto en formato ZIP la imagen del objeto creado.

Agradezco de antemano la colaboración que me puedan dar.


gertorresm
Colombia

Neftali [Germán.Estévez] 03-07-2010 19:45:58

Cita:

Empezado por GerTorresM (Mensaje 369082)
¿ si de hecho deje FixedRows:= 1, para que me dejara en alto el título, por que no o hace ? y Cómo puedo dejar centrado el título?.

y como tercera pregunta me surge la siguiente:

¿Como puedo asociar un método (procedimiento) al evento onClick del objeto?

Adjunto en formato ZIP la imagen del objeto creado.

Revisa además del FixedRows, que RowCount sea > 1, de otra forma la primera no tendrá efecto.
Para el título centrado tendrás que hacerlo de forma manual usando algun evento de pintado de celdas.
Para asignar el click, se hace igual que para cuelquier otro componente; En el club puedes encontrar ejemplos de cómo asignar eventos en ejecución. La idea es crear un procedimientop con los mismos parametros que el evento y asignarlos

Código Delphi [-]
  stringgrid1.Onclick := MyOnclick;

El ZIP no lo has puesto.

GerTorresM 03-07-2010 21:41:05

Evento en TStringGrid
 
Neftali:

Muchas gracias por tu comentario, si de hecho la primera parte ya esta solucionada, y en efecto tienes la razón con respecto al numero de filas, pero de la segunda me asaltan un serie de dudas, colocas el siguiente código

Código Delphi [-]
  stringgrid1.Onclick := MyOnclick;

pero en donde lo debo colocar, es decir como el sistema sabe cuando se ha hecho click en el el StringGrid, en esa parte si estoy muy perdido agradezco tu colaboración


gracias de antemano



gertorresm
colombia

ecfisa 03-07-2010 23:03:01

Hola.

Podés ponerlo en la creación del form:

Código:

procedure TForm1.FormCreate(Sender: TObject);
begin
  stringgrid1.Onclick := MyOnclick;
end;

Saludos.

GerTorresM 04-07-2010 14:25:20

Asunto conlcuido
 
Muchas gracias a Neftali y a ecfisa, con las explicaciones doy por entendido el tema y considero cerrado el hilo


La franja horaria es GMT +2. Ahora son las 06:04:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi