Delphi-PRAXiS

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 Eigene Combobox - Items selbst zeichnen (https://www.delphipraxis.net/181923-eigene-combobox-items-selbst-zeichnen.html)

Neutral General 18. Sep 2014 12:54

Eigene Combobox - Items selbst zeichnen
 
Hallo,

Ich habe eine ComboBox von TCustomCombobox abgeleitet und stehe vor einem Problem.
Der Text der einzelnen Items soll nicht 1:1 gezeichnet werden. Sondern (z.B.) nur die
ersten 10 Zeichen der jeweiligen Items.

Ich kann das erreichen indem ich DrawItem überschreibe oder das OnDrawItem-Event benutze,
aber für beide Varianten MUSS ich den Style auf OwnerDraw* setzen, was ich nicht möchte.

Hat da jemand eine Idee wie sowas machbar wäre?

mkinzler 18. Sep 2014 12:57

AW: Eigene Combobox - Items selbst zeichnen
 
OwnerDraw heisst, ja das diese Methoden aufgerufen werden. Du willst diese also aufrufen, ohne sie aufzurufen?

Neutral General 18. Sep 2014 12:59

AW: Eigene Combobox - Items selbst zeichnen
 
Ich will wissen ob es abgesehen von diesen beiden Methoden eine Möglichkeit gibt die kein Ownerdraw erfordert.

Blup 18. Sep 2014 16:58

AW: Eigene Combobox - Items selbst zeichnen
 
Die VCL liefert nur einen Container der die Zugriffe auf das eigentliche Windowsteuerelement kapselt.
Ohne Ownerdraw versendet dieses keine Nachrichten sondern kümmert sich um das Zeichnen selbst.

Warum willst du Ownerdraw nicht setzen?

Denkbar wäre eine eigene Klasse von TComboBoxStrings abzuleiten, die verkürzte Texte an das Windowsteuerelement übermittelt.

Neutral General 19. Sep 2014 08:27

AW: Eigene Combobox - Items selbst zeichnen
 
Zitat:

Zitat von Blup (Beitrag 1273045)
Die VCL liefert nur einen Container der die Zugriffe auf das eigentliche Windowsteuerelement kapselt.
Ohne Ownerdraw versendet dieses keine Nachrichten sondern kümmert sich um das Zeichnen selbst.

Warum willst du Ownerdraw nicht setzen?

Denkbar wäre eine eigene Klasse von TComboBoxStrings abzuleiten, die verkürzte Texte an das Windowsteuerelement übermittelt.

Ich leite jetzt von der DevExpress ComboBox ab. Ich denke da werde ich bessere Möglichkeiten haben.

Jumpy 19. Sep 2014 09:27

AW: Eigene Combobox - Items selbst zeichnen
 
Hätte man nicht so ableiten können, dass man die vollständigen Texte in die Objects der TStrings packen kann?


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 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