![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| MadDog__ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.10.2007 Репутация: нет Всего: нет |
Привет!
я рисую по координатам 0, 0 но мне надо выйти выше по У и я применяю graf.TranslateTransform( 0,(float)(15 * dif)); для сдвига координат, координаты сдвигаются а вот как сдвинуть все что нарисованно вниз не знаю. и еще пропадает изображение когда сворачиваю окно. перерисовывать заново не хочеться т.к мнго нужно рисовать, поэтому как сохранить нарисованное и сдвинуть вниз вместе с координатами? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 16 Всего: 142 |
MadDog__, весь вопрос в том, как ты вообще выполняешь прорисовку. Судя по проблеме предполагаю, что ты просто создаешь графический контекст и прорисовываешь в нём однократно. Но так всё нарисованное будет исчезать при каждой перерисовке, то есть при сворачивании, при закрытии изображения или его части, к примеру другим окном, и последующем открытии и т. д. Прорисовку следует выполнять либо в переопределённом методе OnPain (в случае, если прорисовка выполняется в самописном контроле), либо в обработчике события Pain. В обоих случаях графический контекст лучше получать из аргумента метода.
Если же надо объектом следует выполнять какие-либо манипуляции, то прорисовка должна быть универсальной, а сами описания элементов прорисовываемого изображения, должны находиться в каком-то объекте, содержимое которого можно изменить. Простой пример: тебе недо изобразить прямоугольник, но ты хочешь изменять его цвет размеры и положение. В этом случае тебе придется создать класс, описывающий параметры прямоугольника, а в методе, выполняющем его прорисовку, использовать эти параметры. Далее при изменении какого-либо параметра, тебе придется вызывать перерисовку всего изображения и прямоугольник отобразиться с учётом новых правил. Если прорисовывается несколько объектов, то метод прорисовки должен будет обойти коллекцию этих объектов и в идеале они должны прорисовать себя сами. Ну вот как-то так. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| MadDog__ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 2.10.2007 Репутация: нет Всего: нет |
благодарю) я так и думал просто хотел с хитрить и меньше заботиться о сохранении данных и новой прорисовке
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |