Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизПроблема с прорисовкой в Chart Найти похожие ветки
← →
MAPIIIAJL (2003-11-03 15:15) [0]Проблема с прорисовкой в Chart. В Chart рисую график,
кот. отображает определенные данные, находящиеся в таблице на тойже форме. По таблице перемещаю курсор, в зависимости от его положения рисую на графике дополнительный курсор в виде кружка, для подсветки точки на графике, соответствующей точке в таблице. Вот в чем проблемс. Кружок на Chart-e рисуется в Canvas-e. При потере фокуса формы, и получении его снова, он не перерисовывается!!! Т.е. если открыть какое либо окно, поверх запущенного приложения, то новое окно сотрет кружок, и при возврате в приложение будет отображен график уже без кружка. Событие AfterDraw не работает при потере фокуса. Такая же чехорда происходит при свертывании/развертывании приложения.
И еще: в канаве я рисую используя метод Canvas.Pen.Mode:=pmNotXor;
Т.е. старый курсор гасится за счет повторного рисования по нему
Canvas.Ellipse(XPos-10, YPos-10, XPos+10, YPos+10);
А при пропадании курсора из-за потери фокуса у меня рисуется 2 курсора. Потому что я рисую в том же месте чтоб якобы погасить предыдущий, а на деле получается его прорисовка...
Может кто нить подскажет, как справиться с проблемой? Заранее спасиб.
← →
BrainStorm (2003-11-03 18:26) [1]Если рисовать на Canvas, то лучше всего на PaintBox.Canvas и для перерисовки использовать событие OnPaint.
А в Chart рисуют с помощью Chart.Series[nNum].AddXY(...
и тогда Chart сам позаботится о перерисовке.
← →
MAPIIIAJL (2003-11-04 09:38) [2]Понял! Буду менять код. спасиб!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.038 c