Delphi-PRAXiS
Seite 3 von 3     123   

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/)
-   -   Delphi "Element '' hat kein übergeordnetes Fenster" (https://www.delphipraxis.net/86317-element-hat-kein-uebergeordnetes-fenster.html)

xZise 14. Feb 2007 22:34

Re: "Element '' hat kein übergeordnetes Fenster"
 
Okay... Wegen dem Parent habe ich gerade einen Einfall gehabt:
Ich überschreibe einfach die "Parent"-Property der Memo, und setze immer wenn das Memoparent gesetzt wird, auch gleichzeitig den Listboxparent.


Allerdings komme ich nicht mit dem TStrings weiter....

IngoD7 14. Feb 2007 22:42

Re: "Element '' hat kein übergeordnetes Fenster"
 
Nochmal eben zu dem Parent:

Zitat:

Zitat von xZise
Ich weiß, nur muss ich doch (höchstwahrscheinlich?) meiner Listbox ein Parent zuweisen. Jedenfalls müsste ich das wenn ich sie dynamisch in meiner Anwendung erstelle. Aufgrund dessen wollte ich der Listbox ein Parent zuweisen.
Das Problem ist aber, dass ich jetzt nicht genau weis was als Parent genommen wird.
Gibt es vielleicht bessere Vorschläge?

Wo soll denn die Listbox angezeigt werden? Auf dem TCompletionMemo? Dann ist das CompletionMemo auch der Parent der Listbox. Also so:

Delphi-Quellcode:
constructor TCompletionMemo.Create(AOwner: TComponent);
begin
   inherited;
  completionBox := TListBox.Create(self);
  completionBox.Parent := self;  //<=============== guckst du
  completionBox.Width := FCompletionSizeWidth;
  completionBox.Height := FCompletionSizeHeight;
  completionBox.HandleNeeded;
  FCompletionList := TStringList.Create;
end;

xZise 15. Feb 2007 11:46

Re: "Element '' hat kein übergeordnetes Fenster"
 
Nein ;) Es soll auf dem Memoparent sein (deswegen werde ich auch die parent-property überschreiben...)!

Aber das ist nicht das Problem. Es liegt jetzt eher bei denen:
  • Keine Vernüftige Desgintime zuweisung der möglichen Einträge ((F)CompletionList)
  • Die Listbox wird nicht angezigt (ggf. ist das behoben, wenn ich die property überschreibe)

IngoD7 15. Feb 2007 12:24

Re: "Element '' hat kein übergeordnetes Fenster"
 
Zitat:

Zitat von xZise
Es soll auf dem Memoparent sein (deswegen werde ich auch die parent-property überschreiben...)!
Aber das ist nicht das Problem. Es liegt jetzt eher bei denen:
  • Keine Vernüftige Desgintime zuweisung der möglichen Einträge ((F)CompletionList)
  • Die Listbox wird nicht angezigt (ggf. ist das behoben, wenn ich die property überschreibe)

Mir fehlt in diesen Dingen die Erfahrung.

Aber mir fällt dazu das TLabeledEdit ein. Das ist ein Editfeld mit nebenstehendem Label.
Du möchtest ein Memo mit nebenstehender Listbox.

Schaue doch mal, wie das Label in das TLabeledEdit kommt und zur Designzeit angezeigt wird. Dort tauchen Proceduren wie SetSubComponent auf.

Vielleicht erkennst du notwendige Gemeinsamkeiten.

xZise 15. Feb 2007 15:01

Re: "Element '' hat kein übergeordnetes Fenster"
 
Zitat:

Zitat von IngoD7
Aber mir fällt dazu das TLabeledEdit ein.

Ich möchte die Listbox aber nicht als eine solche Komponente darstellen ;) Die Listbos soll nur von der Komponente verwaltet werden ;)

IngoD7 15. Feb 2007 15:12

Re: "Element '' hat kein übergeordnetes Fenster"
 
Was ist kaputt?????? :shock:

Von welcher Listbox, die nicht angezeigt wird, hast du denn die ganze Zeit gesprochen?

Erzählst du nicht die ganze Zeit davon, dass du dich in der IDE - also zur Entwurfszeit - befindest und die Box da aber nicht sehen kannst? Das ist aber nun auf einmal gar nicht schlimm, weil du sie ja nur zur Laufzeit anzeigen willst?


Ich geb's auf.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:01 Uhr.
Seite 3 von 3     123   

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