![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Имеется график функции, нарисованный в элементе Paintbox.
Проблема: для наглядности сделать зеленую сетку на графике так, чтобы эту сетку можно было включать и выключать,а график бы не менялся. Пробовал включать сетку (с помощью RadioButton) путем рисования линий сетки зеленым цветом, а выключать сетку - поверх линий сетки рисовать линии цвета фона,на котором нарисован график - но тогда линии цвета фона проступают на самом графике функции. Как сделать отключаемую сетку,чтобы при ее отключении на графике не было видно изменений? Буду благодарен подсказке. |
|
#2
|
||||
|
||||
|
Самый простой вариант - перерисовать график функции после отключения сетки.
|
|
#3
|
|||
|
|||
|
Цитата:
|
|
#5
|
||||
|
||||
|
график рисуется в событии OnPaint у PaintBox?
|
|
#6
|
||||
|
||||
|
Цитата:
|
|
#7
|
||||
|
||||
|
сетка рисуется на временном битмапе, при выборе ее отображать - копируем чистый график в другой временный битмап (или заранее рисуем в том числе на временном битмапе), а сетку на видимый график, при выборе не отображать - копируем чистый график обратно
ну или XOR |
|
#8
|
||||
|
||||
|
Как и сказано выше, отрисовка должна происходить в событии OnPaint. Иначе при любом перекрытии контрола изображении потеряется. Отсюда и выбираем варианты:
1. рисовать сетку на отдельном битмапе, что бессмысленно, так как всё равно всё рисуется с нуля. 2. рисовать всё вместе, но с проверкоё - RadioButton/CheckBox. |