[Delphi 2010] компоненти

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by ADR-007, 23 Jul 2010.

  1. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    как создать компонент в Делфи 2010? я выбрал из меню 'новый / компонент' писал писал ... а добавить / создать / запустить / компилировать или хоть что-то с ним сделать (помимо использования как простого модуля) не получилось
     
  2. AlexTheC0d3r

    AlexTheC0d3r Elder - Старейшина

    Joined:
    25 Jul 2008
    Messages:
    388
    Likes Received:
    179
    Reputations:
    18
    как ты хочешь его
    если это КОМПОНЕНТ, который можно только
    что ты собственно и делаешь
     
  3. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    [​IMG]
    и как создать?
     
  4. ZdezBilYa

    ZdezBilYa Elder - Старейшина

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    Компонент в виде *.pas файла и хочешь его установить на панель компонентов?
     
  5. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    я в курсе что нужни еще другие файли... но как их создать??
    неужели нельза создать компонет в среде Delphi 2010???
     
  6. ZdezBilYa

    ZdezBilYa Elder - Старейшина

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    Я же спрашиваю, а ничего не утверждаю. Можно и просто pas установить.

    File - New - Package
    Создали пакет, сохраним.
    Project - Add to Project
    Выбираем файл компонента (pas), который будет в этом пакете.
    Сохраняем.
    Теперь в Project Manager правой кнопкой по названию пакета - Compile - потом Install.
    Всё, если в компоненте ошибок нет, то появится сообщение об установке.
    Сохраняем, закрываем, пользуемся
     
    1 person likes this.
  7. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    спасибо работает, но ... мой компонент является наследником TPanel + на TPanel есть еще несколько компонентов но их почему-то не показывает до запуска программы. почему так?
    собственно компонетов (недописанный):
    Code:
    unit AuctionItem;
    
    interface
    
    uses
      SysUtils, Classes, Controls, ExtCtrls,Graphics,
      Gladiatus,
      StdCtrls;
    
    type
      TAuctionItem = class(TPanel)
      private
        fParams : TGladiatusAuctionItem;
        fMemo   : TMemo;
        fLabel  : TLabel;
        procedure SetParams(const Value: TGladiatusAuctionItem);
      protected
        { Protected declarations }
      public
        constructor Create(AOwner: TComponent);         override;
      published
        property  Params :  TGladiatusAuctionItem write SetParams;
      end;
    
    procedure Register;
    
    implementation
    
    procedure Register;
    begin
      RegisterComponents('Samples', [TAuctionItem]);
    end;
    
    { TAuctionItem }
    
    constructor TAuctionItem.Create(AOwner: TComponent);
    begin
      inherited Create(AOwner);
      fMemo:=TMemo.Create(self);
      fMemo.Parent  :=Self;
      fMemo.ScrollBars:=ssVertical;
      fMemo.Height  :=90;
      fMemo.Width   :=200;
      fMemo.Left    :=68;
      fMemo.Top     :=21;
      //fMemo.Anchors :=[akLeft,akTop,akRight,akBottom];
      fMemo.Visible :=true;
    
      fLabel:=TLabel.Create(self);
      fLabel.Font.Size  :=10;
      fLabel.Font.Style :=[fsBold];
      fLabel.Left       :=68;
      fLabel.Top        :=4;
      fLabel.Caption    :='AuctionItem';
      fLabel.Parent     :=Self;
      fLabel.Visible    :=true;
    
      Self.Height   :=127;
      self.Width    :=280;
      Self.Left     :=7;
      Self.Top      :=7;
      Self.Caption  :='';
      Self.BevelKind:=bkTile;
      Self.BevelOuter:=bvNone;
      Self.Visible  :=true;
    end;
    
    procedure TAuctionItem.SetParams(const Value: TGladiatusAuctionItem);
    begin
    
    end;
    
    end.