Форум: "Основная";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
ВнизНачинаю дорисовывать в TreeNode - шрифт меняется! Найти похожие ветки
← →
miDDTrich (2002-07-04 15:43) [0]Добрый день,
Хочу дорисовать немного графики справа от текста TreeNode.
То, как стандартно отрисовываются и ветки и узлы и текст меня вполне устраивает, т.е. я поставил DefaultDraw:=True и не хочу усложнять себе жизнь ;-)
Все замечательно, пока я не начинаю рисовать (LineTo). После первой моей линии дефолтовый шрифт, которым выводятся элементы
(Arial,8pt, вроде) неожиданно меняется во всем TreeView на какой-то Times,11pt,Bold...
Подскажите, можно ли не рисовать ручками (DefaultDraw:=False), если просто нужно чуть-чуть дорисовать? Спасибо!
← →
qube (2002-07-04 15:48) [1]Кусок исходника приведи?
← →
miDDTrich (2002-07-04 16:13) [2]Собственно, исходника-то нету ;-)
procedure TForm1.tvAdvancedCustomDrawItem();
begin
with tv.Canvas do
begin
DefaultDraw:=True;
NodeRect:=Node.DisplayRect(False);
MoveTo(NodeRect.Left+20,NodeRect.Top+5);
// LineTo(NodeRect.Right, NodeRect.Top+5);
Так все в порядке.
Если раскомментировать последнюю строку, то рисуется горизонтальная линия, а весь шрифт TTreeView становится ужасным болдом.
Посмотреть можно здесь:
http://www.mitrich.ru/1.gif
http://www.mitrich.ru/2.gif
← →
qube (2002-07-04 16:39) [3]Вот это помогло:
Font.Name := "MS Sans serif";
← →
miDDTrich (2002-07-04 16:58) [4]Действительно, помогло прописывание Canvas.Font.Name при каждом вызове AdvancedCustomDrawItem().
Спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c