FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Duda creo que elemental... Lo siento. :)
Hola..., llevo bastante tiempo con este del Delphi (un par de añicos), vamos que de programación chapurreo un poquico, pero mi problema es con el tema de creación de componentes ya que he creado alguno pero únicamente para personalizar los controles que ya hay existentes a determinadas necesidades.
Mi problema es que quiero crear un componente (similar a un Panel) o cualquiera que pueda contener otros componentes y poder incorporarle una etiqueta, un barra de progreso y un componente de TCP/IP. Creo los objetos anidados, pero no he conseguido que se vea nada en el panel. Me consta que existe porque utilizo chivatos para comprobar que están creados y visibles..., pero no se como hacer para que se vea. Adjunto el código que estoy utilizando (lamento la mala calidad del mismo). Espero que podais iluminarme... ))) unit QDownload; interface uses Windows, Messages, SysUtils, Classes, Controls,QExtCtrls,QComCtrls,QStdCtrls; type TDownload = class(tpanel) private { Private declarations } FEtiqueta:TLabel; FBarraProceso:TProgressBar; Tiempo:Ttimer; function LeeEtiqueta:string; procedure EscribeEtiqueta (Value:String); procedure CambiaTiempo (Sender:TObject); protected { Protected declarations } public { Public declarations } constructor create (Aowner:TComponent);override; published { Published declarations } property Etiqueta:String read LeeEtiqueta write EscribeEtiqueta; end; procedure Register; implementation procedure Register; begin RegisterComponents('CGC', [TDownload]); end; constructor TDownload.create (Aowner:TComponent); begin inherited Create (Aowner); FEtiqueta:=TLabel.Create(self); FEtiqueta.Caption:= 'Prueba'; FEtiqueta.Left:=24; Fetiqueta.Top:=16; FEtiqueta.Visible:=true; FBarraProceso:=TProgressBar.Create(Self); FBarraProceso.Visible:=true; Tiempo:=TTimer.Create(self); Tiempo.Interval:=10; Tiempo.Enabled:=true; Tiempo.OnTimer:=CambiaTiempo; end; function TDownload.LeeEtiqueta:String; begin result:=FEtiqueta.Caption; end; procedure TDownload.EscribeEtiqueta (Value:String); begin FEtiqueta.Caption:=Value; end; procedure TDownload.CambiaTiempo (Sender:TObject); begin if Tiempo.Tag=0 then begin self.caption:='Ya ha llegado la hora'; self.Tiempo.Enabled:=false; self.Tiempo.Tag:=1; end else self.caption:='Ya Nos hemos pasao'; end; |
|
|
|