![]() |
TComboBox DrawItem blinkender Cursor
Hallo!
Ich habe ich ein komisches Phänomen. Ich will einige Einträge in der TComboBox andersfarbig darstellen. Dafür habe ich Style auf csOwnerDrawVariable gesetzt und bei OnDrawtItem folgenden Code eingebaut:
Code:
Das funktioniert alles super gut. Allerdings habe ich in diesem Feld keinen blinkendenprocedure TFormArtikelCopy.WGDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); Var aCB : TComboBox; begin If (Control IS TComboBox) Then Begin aCB := TComboBox(Control); If TWGStatus(aCB.Items.Objects[Index]).Inaktiv Then Begin aCB.Canvas.Font.Color := clSilver; aCB.Canvas.Font.Style := [fsItalic]; End Else Begin aCB.Canvas.Font.Color := clBlack; aCB.Canvas.Font.Style := []; End; aCB.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, aCB.Items[Index]); End; end; Cursor mehr. Setzte ich den Style wieder zurück, ist er wieder da. Wie bekomme ich den mit gesetzter Style-Variable wieder hin? Danke für Tipps schon mal im Voraus! Stephan |
AW: TComboBox DrawItem blinkender Cursor
Hallo,
wenn ich den Threadtitel und Zitat:
Zitat:
Eine Combobox ist nur dann editierbar, wenn Style csSimple oder csDropDown gesetzt ist. Im diesem Fall feuert die Combobox aber keine WM_DRAWITEM Message, so dass Dein Eventhandler wirkungslos bleibt. Die Einstellung csOwnerDrawFixed bzw. csOwnerDrawVariable verhält sich - was die Editierbarkeit angeht - wie csDropDownList: definitiv keine Eingabemöglichkeit. Dafür funktioniert aber das "eigenhändige" Zeichnen der Listeneinträge - sogar super gut. :wink: Aber vielleicht habe die Kollegen noch 'ne Idee. Gruß |
AW: TComboBox DrawItem blinkender Cursor
Ok, das leuchtet mir ein...
Allerdings könnte in diesem Fall auch die ComboBox ReadOnly sein, damit sie nicht editierbar ist. Mit einem Cursor ist es aber für den Anwender einfacher. Er sieht wo er gerade steht und was er eingeben kann. Es soll halt die Suche vereinfachen. Stephan |
AW: TComboBox DrawItem blinkender Cursor
Hallo,
Zitat:
Das ganze nochmals kurz: caret in der Combobox und Listeneinträge selbst zeichnen geht AFAIK nicht. Gruß |
AW: TComboBox DrawItem blinkender Cursor
Schade, schade... :( Wäre auch zu schön um wahr zu sein.
Trotzdem danke für die Info. Stephan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz