Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi ListBox erzeugen (https://www.delphipraxis.net/106724-listbox-erzeugen.html)

HolgerCW 15. Jan 2008 15:37


ListBox erzeugen
 
Hallo zusammen,

ich möchte eine ListBox erzeugen. Wie mache ich das ?

So klappt das nicht wirklich:

Delphi-Quellcode:
var
 Liste: TListBox;
 Component: TComponent;
begin
 Liste := TListBox.Create(Component);
 Liste.Items.Add('Text');
end;
Wenn ich das Add mache kommt der Fehler: "hat kein übergeordnetes Fenster"

Gruss

Holger

Apollonius 15. Jan 2008 15:41

Re: ListBox erzeugen
 
Deine Owner-Angabe ist Quatsch. Du musst eine existierende Komponente angeben - oder einfach nil. Außerdem musst du das Property Parent setzen und Visible auf True, dann solltest du etwas sehen. Dann kannst du natürlich noch Top, Left, Width und Height setzen.

1234588 15. Jan 2008 15:41

Re: ListBox erzeugen
 
du musst noch property's wie Parent usw. setzen
schau mal was delphi dazu in der *.dfm datei macht (>erstelle ein projekt, zieh eine listbox drauf und speicher es)

//edit
warum kein roter kasten oO

stahli 15. Jan 2008 15:42

Re: ListBox erzeugen
 
Hallo Holger,

Deine "Component" ist nicht instanziert. Du kannst allerdings auch NIL übergeben, musst Dich aber dann um die Freigabe der ListBox später selbst kümmern.
(sonst wird die Listbox automatisch freigegeben, wenn der Owner freigegeben wird)

Dein Problem sollte aber daran liegen, dass Du kein Parent zugewiesen hast. Die Listbox will ihre Änderungen zeichnen, kann das aber nicht, da sie in keine Komponente gesetzt wurde.

stahli

HolgerCW 15. Jan 2008 15:49

Re: ListBox erzeugen
 
Ich möchte die ListBox auch nirgendwo erscheinen lassen.

Ich hatte mir nur mal eine Funktion erstellt, die Listboxen ausliest.

Diese wollte ich wieder nutzen.

Wollte also eine ListBox erzeugen, dann die Werte rein schreiben und danach diese Werte von meiner Funktion auslesen lassen.

Welche Sachen muss ich für dieses alles setzen ?

DeddyH 15. Jan 2008 15:50

Re: ListBox erzeugen
 
Wieso nimmst Du dann nicht lieber eine TStringList?

HolgerCW 15. Jan 2008 16:17

Re: ListBox erzeugen
 
Ich weiss, das wäre einfacher, wollte nur nciht meine Funktion umschreiben.

Habe aber jetzt eine ListBox unsichtbar auf die Form gelegt und nutze diese ....

Gruss

Holger

Luckie 15. Jan 2008 16:23

Re: ListBox erzeugen
 
Zeig mal die FGunktion. Da muss man eigentlich ichts umschreiben.

DeddyH 15. Jan 2008 16:40

Re: ListBox erzeugen
 
Zitat:

Zitat von Luckie
Zeig mal die FGunktion. Da muss man eigentlich ichts umschreiben.

Nur, wenn er eine Instanz von TListBox als Parameter übergibt. Und auch dann ist das Umschreiben nicht so ein großer Akt.

HolgerCW 17. Jan 2008 19:10

Re: ListBox erzeugen
 
Ihr habt recht. Nur war die Zeit im Nacken.

Nun habe ich auch die Funktion umgeschrieben.

Gruss

Holger


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr.

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