| Autor |
Beitrag |
Rachel_Hannah
Hält's aus hier
Beiträge: 11
|
Verfasst: So 13.05.07 00:11
hi,
gibt es in delphi die möglichkeit ne listbox so zu formatieren, dass sie rechtsbündig beschrieben wird?
Danke schon mal für eure tipps
|
|
John Sanson
      
Beiträge: 72
WinXP,WinVista
Delphi(BDS2006, 5), C#(VS2005, BDS2006), VB6
|
Verfasst: So 13.05.07 00:47
Titel: Rechtsbündig
jo das geht.
1. Style der ListBox auf lbOwnerDrawFixed stellen.
2. Folgenden Code im OnDrawItem Event der ListBox packen:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); var l: Integer; t: String; begin with ListBox1 do begin Canvas.FillRect(Rect); t := Items[Index]; l := Rect.Right - Canvas.TextWidth(t) - 1; Canvas.TextOut(l, Rect.Top, t); end; end; |
PS. Ausrichtung wird erst in der Laufzeit sichtbar.
|
|
Rachel_Hannah 
Hält's aus hier
Beiträge: 11
|
Verfasst: So 13.05.07 02:10
hab das jetzt mal übernommen, aber leider bleibt das ganze nach wie vor linksbündig
|
|
Comp-Freak
      
Beiträge: 89
|
Verfasst: So 13.05.07 03:08
1. Style der ListBox auf lbOwnerDrawFixed stellen.
hast du das gemacht?
Edit: habs gerade ausprobiert. Klappt Doch! Oder?
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: So 13.05.07 09:09
Hallo,
setz mal einen Haltepunkt in die Prozedur.
Die Prozedur dem Ereignis OnDraw zugewiesen?
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
John Sanson
      
Beiträge: 72
WinXP,WinVista
Delphi(BDS2006, 5), C#(VS2005, BDS2006), VB6
|
Verfasst: So 13.05.07 12:12
Heisst deine ListBox vielleicht nicht ListBox1?
|
|
jakobwenzel
      
Beiträge: 1889
Erhaltene Danke: 1
XP home, ubuntu
BDS 2006 Prof
|
Verfasst: So 13.05.07 12:28
Da würd das ganze aber gar nicht erst kompilieren.
Und das tut es ja anscheinend.
_________________ I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
|
|
Comp-Freak
      
Beiträge: 89
|
Verfasst: So 13.05.07 12:48
Villeciht hat er ja mehrere listobxen? aber er sollte doch dann merken das etwas schief ging .... lass uns mahl abwarten 
|
|
Rachel_Hannah 
Hält's aus hier
Beiträge: 11
|
Verfasst: So 13.05.07 13:17
er ist eine sie
den namen der listbox hab ich schon angepasst gehabt, bin ja nur ein bisschen blöd, nicht ganz. wie ruf ich denn ondraw auf, der haltepunkt hat den ursprung allen übels auffliegen lassen, aber ich kanns nicht beheben.
|
|
John Sanson
      
Beiträge: 72
WinXP,WinVista
Delphi(BDS2006, 5), C#(VS2005, BDS2006), VB6
|
Verfasst: So 13.05.07 13:33
Du musst in deinem Objekt Inspector Fenster auf Events bzw. Ereignisse klicken und OnDrawItem auswählen. Dann wird automatisch in die Codeansicht gewechselt und du kannst den Code einfügen.
|
|
Rachel_Hannah 
Hält's aus hier
Beiträge: 11
|
Verfasst: So 13.05.07 19:02
hmm, komisch ich dachte, dass hätte ich schon gemacht, aber jetzt klappts auf jeden fall, vielen dank, habt mir echt geholfen!
lg
rachel
|
|