Jak stworzyć komponent - formę?

0

Mam pytanko, takie jak w temacie. Wiem, że banalne, ale jakoś nigdzie nic nie znalazłem, a zależy mi na czasie... Czy ktoś mógłby mi pomóc? Chodzi o komponent, który zawierałby formę i na niej jakieś inne komponenty (ListBox, IdPOP3, Labele, Edity, RichEdit)...

0

Hmm - nie rozumiem. Komponent jest klasą, podobnie jak forma - chcesz stworzyć instalkę swojego komponentu, który będzie jakąś formą z bajerami czy co? Musiałbyś zagłębić się w przeróżne źródła komponentów klasy TControl... Nie jest to takie proste - przyzwyczajenie do VCLa niestety nabiera takie nawyki

0

Chodzi o zrobienie komponentu, takiego jak DialogBox, tyle że bardziej rozbudowanego (chcę stworzyć komponent, obsługujący pocztę, ale nie tylko sam protokół (SMTP+POP3), ale zawierający listę maili, okienka do wysyłania odbierania itp.) Wiem, że nie będzie to proste i będzie wymagało dużego wkładu (ręczne nadanie olbrzymiej ilości właściwości itp.), ale chodzi mi o to, jak stworzyć "szkielet" takiego komponentu, co musi zawierać itp. tzn. czy jak np. mój komponent będzie miał w sobie Edit'a, to czy muszę go samemu tworzyć, czy zostanie stworzony już automatycznie (jako element formy) itp.
[dopisane]
Może ktoś tworzył już taki komponent i mógłby mi odpowiedzieć na te pytanka?

0

Proponuję stworzyć formę, a potem dodać do repozytorium. Może wystarczy?

0

O tworzeniu komponentów możnaby dużo mówić, więc omówie może samo umieszczanie innych komponentów w tworzonym. Otóż np. chce dodać edita do panelu - wyglądało by to mniej wiecej tak:

type
  TEditPanel = class(TPanel);
  private
    FEdit: TEdit;
  public
    constructor create(AOwner: TObject); override;
    property Edit: TEdit read FEdit write FEdit;
  end;

implementation

constructor TEditPanel.create(AOwner: TObject);
begin
  inherited create(AOwner);
  FPanel := TPanel.Create;
  with FPanel do
  begin
    top := 10;
    left := 10;
    width := 100;
    height := 20;
    parent := self;
  end;
end;

kodu nie sprawdzałem, ale mniej więcej o to chodzi.

//używaj tagu <delphi> - m.M

0

Proponuję stworzyć formę, a potem dodać do repozytorium. Może wystarczy?

Wybacz, może powinno, ale niebardzo wystarczy... Czy mógłbyś napisać mniej więcej jak to należy zrobić? Znaczy o dodanie do repozytorium chodzi, a nie o tworzenie formy ;p.

1 użytkowników online, w tym zalogowanych: 0, gości: 1