Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TCollection mit visual Controls (https://www.delphipraxis.net/153086-tcollection-mit-visual-controls.html)

David Martens 20. Jul 2010 14:18

TCollection mit visual Controls
 
Ich habe hier schon über mein Problem geschrieben, aber vielleicht ich ein neuer Titel hilfreich.

Ich suche nach einem Tutorial oder Beispiel oder einer Komponente die mit Hilfe von TCollection eine Reihe von visuellen Contols verwaltet, im OI die Eigenschaften anzeigt und ändern lässt.

Konkret geht es mir um eine TCollection, die TButtons enthält.

Nach mehrfacher mehrstündiger Suche habe ich keine Beispiele gefunden, die beschreiben wie visuellen Contols in einer TCollection organisiert werden können, geschweige denn TButtons.

Sämtliche Beispiele zeichnen die Oberfläche auf dem Canvas selbst.

Vielen Dank im Voraus, David

Sherlock 20. Jul 2010 14:31

AW: TCollection mit visual Controls
 
Schwebt Dir sowas wie eine Toolbar vor? Eventuell genügt dann ein Blick in die Implementierung derselben.

Sherlock

David Martens 20. Jul 2010 15:36

AW: TCollection mit visual Controls
 
Hab ich mir schon angesehen, das hilf leider nicht :(

David Martens 20. Jul 2010 18:03

AW: TCollection mit visual Controls
 
Ich versteh's einfach nicht mehr.

Mit:
Delphi-Quellcode:
procedure TfraButtonleiste.SetButtons(const Value: TButtonTypeSet);
var
  i : TButtonType;
begin
  FButtons := Value;
  ClearButtons;

  for i := fbtSchliessen to fbtAttributieren do
  begin
    if i in FButtons then
      case i of
        fbtSchliessen   : AddButton(i, FOnClickSchliessen);
        fbtUebernehmen  : AddButton(i, FOnClickUebernehmen);
        fbtHilfe        : AddButton(i, FOnClickHilfe);
        ...
        fbtAttributieren : AddButton(i, FOnClickAttributieren);
      end;
  end;
end;
gehts.

TButtonTypeSet ist ein einfaches Set. Ich setze die Buttons im IO und sie sind zur Entwurfszeit da.

Wenn ich das Gleiche mit einer Collection mache (nur um die Reihenfolge beeinflussen zu können) geht es nicht mehr. :wall::wall:

Delphi-Quellcode:
procedure TfraButtonleiste.SetButtonCollection(const Value: TButtonCollection);
var
  i : integer;
begin
  ClearButtons;
  FButtonCollection.Assign(Value);

  for i := 0 to FButtonCollection.Count - 1 do
  begin
    case FButtonCollection.Items[i].ButtonType of
      fbtSchliessen   : AddButton(FButtonCollection.Items[i].ButtonType, FOnClickSchliessen);
      fbtUebernehmen  : AddButton(FButtonCollection.Items[i].ButtonType, FOnClickUebernehmen);
      fbtHilfe        : AddButton(FButtonCollection.Items[i].ButtonType, FOnClickHilfe);
      ...
      fbtAttributieren : AddButton(FButtonCollection.Items[i].ButtonType, FOnClickAttributieren);
    end;
  end;
end;
Das SetButtonCollection scheint zur Entwurfszeit nicht ausgelöst zu werden.

David Martens 26. Jul 2010 15:25

AW: TCollection mit visual Controls
 
Ich weiß es nervt, aber *push*


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz