was das geht nicht? Mann ist das arm

Hm
Edit: falsch, es geht (aus einem anderen Forum) :
1. ownerdraw von mainmenu auf true setzen
2. in methode ondrawitem folgendes schreiben:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| procedure TMainFormEmuBase.Verwalten1DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect; Selected: Boolean); var CheckChar : Char; begin ACanvas.Font.Name := 'Courier New'; ACanvas.Font.Size := 15; ACanvas.Font.Style := [fsBold]; if Selected then ACanvas.Font.Color := clHighLightText else ACanvas.Font.Color := clBlack; CheckChar := ' '; with Sender as TMenuItem do begin if Checked then CheckChar := 'X'; if not Enabled then ACanvas.Font.Color := clBtnShadow; ACanvas.TextRect(ARect,aRect.Left,aRect.Top,CheckChar + ' ' + Caption); end; end; |
Edit2: war das wohl mit selbst zeichnen gemeint? Egal.. Die Schriftbreite passt noch nicht...