Пример простого шрифта TListView OwnerDraw Размер шрифта и цвет?

Я пытаюсь владелец нарисовать элемент управления 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;

Ответы на вопрос(1)

Ваш ответ на вопрос