Ver Mensaje Individual
  #1  
Antiguo 10-07-2003
cesargcman cesargcman is offline
Miembro
 
Registrado: jul 2003
Posts: 10
Reputación: 0
cesargcman Va por buen camino
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;
Responder Con Cita