Hallo zusammen,
wie mir gerade aufgefallen ist, wird die Komponente TTreeView bzw. TCustomTreeView im Win32-Widgetset nicht registriert, d. h. die Methode RegisterCustomTreeView gibt lediglich den Wert False zurück und macht sonst nichts weiter. Das macht die TreeView-Komponente inkompatibel.
Ich würde gern auch für TCustomTreeView eine entsprechende WS-Klasse erstellen. Leider habe ich keine Ahnung, wie diese zu implementieren ist, genauer gesagt, ich weiß nicht welche Methoden benötigt werden oder welche Flags gesetzt werden müssen. Vielleicht könnte mir jemand dabei helfen? Wäre echt super!
Vielen Dank und viele Grüße
Kay
TreeView-Komponente wird nicht registriert
-
- Beiträge: 321
- Registriert: Sa 21. Mär 2009, 17:31
- OS, Lazarus, FPC: Linux (Lazarus SVN, FPC 2.4)
- CPU-Target: 64 Bit
Re: TreeView-Komponente wird nicht registriert
Das TreeView wird komplett von der LCL gezeichnet, praktisch unabhängig vom WidgetSet.
Du kannst also einfach TCustomTreeView ableiten, um es zu ändern.
Du kannst also einfach TCustomTreeView ableiten, um es zu ändern.
Re: TreeView-Komponente wird nicht registriert
Hm und wenn ich den TreeView vom System aufbauen lassen will? Schließlich werden ja auch ListView, ToolBar, ListBox etc. auf diese Weise im System registriert, was dann eine ziemlich inkonsistente Lösung wäre, da die Kompomenten auf unterschiedliche Weise entstehen. Eine explizite Registrierung der Komponentenklasse hätte auch den Vorteil, dass der TreeView von Windows als solcher erkannt und behandelt wird. Momentan wird der TreeView nämlich nur als irgendein x-beliebiges (allgemeines) Steuerelement erkannt.
Aber wie muss ich dazu vorgehen?
Viele Grüße
Kay
Aber wie muss ich dazu vorgehen?
Viele Grüße
Kay
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: TreeView-Komponente wird nicht registriert
Wenn ich das richtig interpretiere, möchtest du ein Windows-eigenes Steuerelement für Bäume (TreeView) unter Lazarus nutzen?Kay hat geschrieben:Eine explizite Registrierung der Komponentenklasse hätte auch den Vorteil, dass der TreeView von Windows als solcher erkannt und behandelt wird. Momentan wird der TreeView nämlich nur als irgendein x-beliebiges (allgemeines) Steuerelement erkannt.
Ich stecke jetzt nicht so tief in der LCL drinnen, aber ich denke die Vorgehensweise wäre wie folgt:
- Allgemeine Widgetset-Klasse definieren (TWSMyTreeView)
- Spezielle Widgetset-Klasse davon ableiten (TWin32WSMyTreeView)
- LCL-Frontend-Klasse erstellen, die TWin32WSMyTreeView verwendet
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Re: TreeView-Komponente wird nicht registriert
Hallo Socke,
vielen Dank für deine Antwort.
Die Vorgehensweise war mir allerdings soweit schon klar. Womit ich einige Probleme habe, das sind die Create- und Destroy-Handler. Was muss da genau rein? Welche Flags muss ich verwenden usw.?
Viele Grüße
Kay
vielen Dank für deine Antwort.
Die Vorgehensweise war mir allerdings soweit schon klar. Womit ich einige Probleme habe, das sind die Create- und Destroy-Handler. Was muss da genau rein? Welche Flags muss ich verwenden usw.?
Viele Grüße
Kay
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: TreeView-Komponente wird nicht registriert
Damit bin ich dann überfragt und kann nur auf Google und MSDN verweisen. Vielleicht kannst du aber auch ein paar Ideen aus der VCL (sofern sie dir zur Verfügung steht) klauen.Kay hat geschrieben:Womit ich einige Probleme habe, das sind die Create- und Destroy-Handler. Was muss da genau rein? Welche Flags muss ich verwenden usw.?
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: TreeView-Komponente wird nicht registriert
Bitte kopier NIEMAND Code aus der VCL, das ist illegal und kann ziemlich heftige Folgen haben, siehe ReactOS.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/