Форум: "Основная";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];
ВнизЧто происходит с 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c