Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Creación de componente (https://www.clubdelphi.com/foros/showthread.php?t=61409)

Migmam2 06-11-2008 13:47:26

Creación de componente
 
Hola a todos,

Estoy intentando crear un componente que hereda de la clase TToolBar.
He aquí el código.

Código:

unit AltiBar;

interface

uses
  SysUtils, Classes, Controls, ToolWin, ComCtrls, StdCtrls, Dialogs;

const
  Cte_Min_Panel_Width = 250;
  Cte_Min_Panel_Height = 100;
  Cte_Side_Margin = 8;

  Cte_Button_Height = 80;
  Cte_Button_Width = 100;

  Cte_Ctrls_Space = 1;
  Cte_Font_Size = 8;


type
  TAltiBar = class(TToolBar)
  private
    { Private declarations }
    FButtonLogin: TToolButton;
    FButtonLogout: TToolButton;
    FButtonSep1: TToolButton;
    FImageList: TImageList;
    FLogin: String;
    FPassword: String;





  protected
    { Protected declarations }

  public
    { Public declarations }
    property Login : String read FLogin write FLogin;
    property Password: String read FPassword write FPassword;


    constructor Create (AOwner: TComponent); override;
    destructor Destroy; override;

  published
    { Published declarations }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Sit', [TAltiBar]);
end;

constructor TAltiBar.Create(AOwner: TComponent);
begin
  inherited Create(aOwner);
  Parent:= TWinControl(aowner);

  Self.Caption := '';
  self.Height  := 100;
  self.Width  := 862;

  // Controls creation

  FButtonSep1  := TToolButton.Create(Self);
  FButtonLogin  := TToolButton.Create(Self);
  FButtonLogout := TToolButton.Create(Self);

  FButtonLogin.Parent  := Self;
  FButtonLogout.Parent := Self;
  FButtonSep1.Parent := Self;

  FButtonLogin.Height  := Cte_Button_Height;
  FButtonLogin.Width  := Cte_Button_Width;

  FButtonLogout.Height := Cte_Button_Height;
  FButtonLogout.Width  := Cte_Button_Width;

  FButtonSep1.Height := Cte_Button_Height;
  FButtonSep1.Width  := Cte_Button_Width;


  FButtonLogin.Caption := 'Login';
  FButtonLogin.ShowHint := True;
  FButtonLogin.Style    := tbsButton;

  FButtonSep1.Style    := tbsSeparator;

  FButtonLogout.Caption := 'Logout';
  FButtonLogout.ShowHint := True;
  FButtonLogout.Style  := tbsButton;




end;


destructor TAltiBar.Destroy;
begin
  inherited;
end;



end.


Creo una nueva aplicación, pego el componente y se ve ok, ahora bien, cuando ejecuto la nueva aplicación me dice que class TToolButton not found!!!

Alguna idea.

Saludos,

Miguel Angel

droguerman 06-11-2008 15:22:20

Creo que es cosa de compilación, borra todos los dcu de tu aplicación y en la libreria añade el path donde están la fuente de tu toolbar

Migmam2 06-11-2008 18:04:29

He probado tu consejo y sigue igual.

Alguna idea más....

coso 06-11-2008 19:48:12

Hola, en el create del componente, usa registerclass(TToolButton) despues del create(AOwner)

Migmam2 01-12-2008 13:44:08

Gracias
 
Mil gracias.

Funciono!!!!


La franja horaria es GMT +2. Ahora son las 07:56:24.

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