Einzelnen Beitrag anzeigen

Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: OnAdvancedCustomDrawSubitem ändert nachfolgende Spalten

  Alt 30. Apr 2006, 16:04
hey, also mir ist das problem nur einmal aufgefallen, da ich normaler weiße die images in der letzten spalte zeichne

naja ne lösung wäre ne andere schriftart zu benutzen anstatt die die du im Object Inspector eingestellt hast, zb. du hast MS Sans Serif eingestellt als font im ListView, dann schreibst im code zb "Font.Name := 'Arial'"
Delphi-Quellcode:
// ist nur ein beispiel code ..
procedure TForm1.ListView1CustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
var
  B: TBitmap;
begin
  if SubItem = 1 then
  begin
    DefaultDraw := False;
    B := TBitmap.Create;
    ImageList1.GetBitmap(0, B);
    ListView1.Canvas.Draw(ListView1.Column[0].Width, Item.Top, b);
    B.Free;
  end else
  begin
    DefaultDraw := True;
    Sender.Canvas.Font.Name := 'Arial';
  end;
end;

// und hier auch nochmal die Font Ändern da sonst .Caption auch die font ändert .. :O
procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
  Sender.Canvas.Font.Name := 'Arial';
end;
ich weiß es ist nicht die beste lösung ist aber ich glaube auch das es ein problem von Delphi ist

cya, ErazerZ
  Mit Zitat antworten Zitat