Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.09;
Скачать: CL | DM;

Вниз

Что происходит с TreeView, когда я делаю обработчик на рисовку?   Найти похожие ветки 

 
Aleksandr ©   (2003-05-28 20:39) [0]

Когда делаю на OnCustomDrawItem обработчик, TreeView попросту изображает из себя "зависшего". На клики мышкой не реагирует, хотя программа продолжает работать, при этом ряд изменений просто не воспринимает. Причем на два разных кода реакция разная. Вот на этом коде все в порядке:

DefaultDraw:=true;
if NOT TMsgItem(Node.Data).Readed then
Sender.Canvas.Font.Style:=Sender.Canvas.Font.Style+[fsBold]


а вот с нижеследующим перечисленные проблемы:


var
M : TMsgItem;
N : TRect;
begin
DefaultDraw:=false;
M:=TMsgItem(Node.Data);
with Sender.Canvas do begin
N:=Node.DisplayRect(false);
FillRect(N);
N.Left:=N.Left+(Node.Level*MTree.Indent)+10;
if NOT M.Readed then
Sender.Canvas.Font.Style:=[fsBold];
TextOut(N.Left,N.Top,M.Subject);
N.Left:=N.Left+TextWidth(M.Subject)+5;
TextOut(N.Left,N.Top,FormatDateTime(" (dd-mmm hh:nn) ",M.SentDateTime)+". ");
N.Left:=N.Left+TextWidth(FormatDateTime(" (dd-mmm hh:nn) ",M.SentDateTime)+". ")+10;
Sender.Canvas.Font.Style:=[fsItalic];
TextOut(N.Left,N.Top,h_MessageFrom+": ");
N.Left:=N.Left+TextWidth(h_MessageFrom+": ")+5;
Font.Color:=clBlue;
Sender.Canvas.Font.Style:=[fsUnderline];
if NOT M.Readed then
Font.Style:=Font.Style+[fsBold];
TextOut(N.Left,N.Top,M.FirmName)
end


Тексты он аутит, но вот без рекомендаций к подчеркиваниям/наклонам и раскраске.


 
Song ©   (2003-05-28 21:59) [1]

Sender.Canvas.Refresh


 
Aleksandr ©   (2003-05-29 07:54) [2]

Заклинит, однако...


 
Aleksandr ©   (2003-05-29 13:08) [3]

Млин... он, похоже, просто с последними установками потом делает свою прорисовку :(


 
Song ©   (2003-05-29 13:24) [4]

Событие вызывается уже после стандартной прорисовки.



Страницы: 1 вся ветка

Текущий архив: 2003.06.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
14-26792
Might
2003-05-23 17:06
2003.06.09
Построение графического редактора


14-26745
Knight
2003-05-22 20:15
2003.06.09
Как расчитать тарифы?


1-26489
Zelius
2003-05-27 15:05
2003.06.09
Как отлавливать ВСЕ Exceptionы программы с помощью JclDebug?


1-26523
Raduga
2003-05-27 13:31
2003.06.09
Как работает таймер


1-26454
k-sergey
2003-05-29 12:22
2003.06.09
Удалить саму себя...