Я пытаюсь владелец нарисовать элемент управления List View в режиме отчета с 4 столбцами, используя OnCustomDrawItem
.
Когда я пытаюсь изменить Canvas.font.color, и это все, что я делаю,У меня нет проблем.
Если я установил canvas.font.size, я обнаружу, что размер текста, нарисованного элементом управления, не изменится.
Если я попытаюсь захватить властьОкраска текста, изнутри OnCustomDrawItem, найти не могу.Я знаю, как использовать OnCustomDraw для рисования в фоновой области, но я хочу создать элемент списка, чтобы настроить цвет, имя шрифта и размер шрифта текста.
Я знаючто есть некоторые проблемы с использованием Canvas в контексте отрисовки владельца ListView, и некоторые ограничения того, что вы можете делать в ListView.
procedure TForm1.MyListViewCustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
Sender.Canvas.Font.Size := 13; // NO effect.
Sender.Canvas.Font.Color := clRed; // WORKS.
Sender.Canvas.Font.Style :=Sender.Canvas.Font.Style + [fsBold]; // WORKS!
end;