Einzelnen Beitrag anzeigen

napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#1

Control 'ListView1' has no parent window.

  Alt 23. Apr 2009, 15:00
Zitat:
---------------------------
Mainproject
---------------------------
Control 'ListView1' has no parent window.
---------------------------
OK
---------------------------
Hallo
Diese unfreundliche Meldung spuckt mir Delphi ins Gesicht...
Meine Form beinhaltet einen Button eine ListView und ein Editfeld.
Ich kompiliere den Quellcode - die Form wird angezeigt - ich klicke auf den Button, kein Fehler, ich klicke auf das Edit, kein Fehler, ich klicke auf die Listview und Delphi streikt (s.o.)

Was nun?
Da die ListView nicht zur Laufzeit erzeugt wird, sondern "von" anfang an dabei ist, dachte ich mir eigentlich es muss doch ein Parent haben.

Nun ging ich wie folgt vor.
Delphi-Quellcode:
ShowMessage(Form2.ListView1.ParentWindow);
ShowMessage(Form2.ListView1.Parent.ClassName);
Das Interessante:
ParentWindow = 0
ClassName = Form2

Mache ich das gleiche auch für den Button oder das Editfeld, bekomme ich genau die gleichen Werte - demnach muss es doch ein Parent haben - was mache ich falsch? Ich habe neben der normalen ListView auch eine JvListView ausporbiert - beide gehen nicht, aber in andern Projekten tritt kein Problem auf. Zudem besteht mein Programm nur aus einem Buttonklick...
Allerdings wird der Form die Eigenschaften Parent und ParentWindow die Werte eines TTabSheets zugewiesen - sprich die Form wird in dem TabSheet angezeigt - liegt da der Fehler?



** Edit **
Arg habe mein Fehler gefunden:
Form.Parent := tsKernelPluginSheet; tsKernelPluginSheet war von Typ TTabSheet. Diese Zeile hat mir alles zerfetzt

Vielleicht hilft es ja noch anderen
Dadurch ergibt sich jetzt leider aber ein neues Problem, die Listview ist in 3 Spalten unterteilt welche mit Autowidth sich gleichmäßig aufteilen. Nun wird die Form im Tabsheet angezeigt, jedoch hat die Form die Bereite meines Bildschirms, nicht aber die des Tabsheets ^^
Ich dachte ich löse das mit Align = alClient - aber das funktioniert nicht - jemand eine Idee?
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat