чутка правим пример из демок(Delphi7\Demos\Virtual ListView):
| Код | procedure TForm1.ListViewCustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean); var Attrs: Integer; Ext: String; begin if Item = nil then Exit; Ext := UpperCase(ExtractFileExt(Item.Caption)); Delete(Ext, 1, 1); case (Pos(Ext, '|EXE|COM|BAT|TXT|LOG|')) of 2,6,10: ListView.Canvas.Font.Color := clGreen; 14,18: ListView.Canvas.Font.Color := clMaroon; end; Attrs := ShellItem(Item.Index).Attributes; if Bool(Attrs and FILE_ATTRIBUTE_READONLY) then ListView.Canvas.Font.Color := clGrayText; if Bool(Attrs and FILE_ATTRIBUTE_HIDDEN) then ListView.Canvas.Font.Style := ListView.Canvas.Font.Style + [fsStrikeOut]; if Bool(Attrs and FILE_ATTRIBUTE_SYSTEM) then Listview.Canvas.Font.Color := clHighlight; end;
|
|