FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Crear elementos en tiempo de ejecucion
Hola a todos,
Tengo un control TPageControl con una sola pestaña, dentro de él hay un ListView con 3 columnas. Cuando se abre mi aplicación, ésta lee unos determinados registros de una BD, y para cada uno tiene que crear una pestaña nueva igual que la primera, es decir, tendrá un nombre y caption diferentes a las demás pero deberá contener tambien un ListView igual que el primero. Espero haberme explicado, muchas gracias por adelantado. |
#2
|
|||
|
|||
Probá con el siguiente código:
procedure TForm1.Button1Click(Sender: TObject); var TS: TTabSheet;begin TS := TTabSheet.Create(Self);end; |
#3
|
|||
|
|||
Ha funcionado pero.....
Me ha funcionado perfectamente, muchas gracias, ahora necesito añadir 4 columnas, con su respectivo ancho y caption. Como lo hago?
Gracias. |
#4
|
|||
|
|||
Me contesto a mi mismo
Ya he descubierto como añadir columnas, lo que se me resiste y no llego a averiguar es cómo aplicarle un estilo de fuente, es decir, quiero que la propiedad Font del LlistView que creo en tiempo de ejecución tenga la letra Verdana y tamaño 8.
Gracias por adelantado. |
#5
|
|||
|
|||
Añado mas....
Una cosa en la que no habia pensado....
Si creo los ListViews en tiempo de ejecución, cómo lo hago para introducir código en sus eventos? Al no estar creados en el diseño no puedo programarlo !!! |
#6
|
|||
|
|||
hola
a ver vamos por partes para lo de la fuente, con el mismo código que has puesto pero modificando la propiedad FONT del listview que has creado: procedure TForm1.Button1Click(Sender: TObject); var TS: TTabSheet; TV: TListView; begin TS := TTabSheet.Create(Self); TS.Caption := 'TabSheet' + IntToStr(PageControl1.PageCount + 1); TS.PageControl := PageControl1; TV := TListView.Create(Self); TV.Parent := TS; TV.Align := alClient; TV.Font.Name := 'Verdana'; Tv.Font.Size := 8; end; En relacion a lo de meter código en los eventos: Tienes que tener previamente creados los procedures para poderlos asignar en tiempo de ejecución a los eventos del nuevo TlistView, por ejemplo: procedure TForm1.HacerClick(sender : TObject); begin // Lo que se tenga que hacer cuando hacen click showmessage('Click'); end; procedure TForm1.Button1Click(Sender: TObject); var TS: TTabSheet; TV: TListView; begin TS := TTabSheet.Create(Self); TS.Caption := 'TabSheet' + IntToStr(PageControl1.PageCount + 1); TS.PageControl := PageControl1; TV := TListView.Create(Self); TV.Parent := TS; TV.Align := alClient; TV.Font.Name := 'Verdana'; Tv.Font.Size := 8; Tv.onclick := HacerClick; end;
__________________
Ánimos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|