AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fenster dynamisch

Ein Thema von Willie1 · begonnen am 22. Feb 2021 · letzter Beitrag vom 26. Feb 2021
 
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#2

AW: Fenster dynamisch

  Alt 23. Feb 2021, 06:34
Warum so kompliziert? Du kannst Dein Fenster wie andere auch bequem in der IDE zusammenstöpseln, zur Verwendung brauchst Du dann die *.pas und die *.dfm. Das könnte dann etwa so aussehen:
Delphi-Quellcode:
...
uses AuswahlDialog (* Unit mit dem entworfenen Fenster *);

procedure AuswahlDlg(Filelist: TStringList; out Filename: string);
var
  frm: TAuswahlDialogForm;
begin
  frm := TAuswahlDialogForm.Create(nil);
  try
    frm.FileList := FileList; // Files soll als Property von TAuswahlDialogForm deklariert sein
    if frm.ShowModal = mrOK then
      Filename := frm.Filename; //ebenso wie Filename
  finally
    frm.Free;
  end;
end;
Zu den Properties in TAuswahlDialogForm:
Delphi-Quellcode:
type
  TAuswahlDialogForm = class(TForm)
    LB: TListBox;
    btnOK: TButton;
    btnCancel: TButton;
    ...
  private
    function GetFileList: TStrings;
    procedure SetFileList(const Value: TStrings);
    function GetFilename: string;
    ...
  public
    property FileList: TStrings read GetFileList write SetFileList;
    property Filename: string read GetFilename;
    ...
  end;

...

function TAuswahlDialogForm.GetFileList: TStrings;
begin
  Result := LB.Items;
end;

procedure TAuswahlDialogForm.SetFileList(const Value: TStrings);
begin
  LB.Items.Assign(Value);
end;

function TAuswahlDialogForm.GetFilename: string;
begin
  if LB.ItemIndex > -1 then
    Result := LB.Items[LB.ItemIndex]
  else
    Result := '';
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (23. Feb 2021 um 06:59 Uhr) Grund: Properties gleich benannt und Getter/Setter erweitert
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:38 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-2025 by Thomas Breitkreuz