Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пользователь рисует на форме (?) 
V
    Опции темы
afanp
Дата 17.2.2010, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 25.11.2008

Репутация: нет
Всего: нет



В результате должна получиться форма, на которой пользователь просто водит мышью и оставляет свои каракули. Обрабатывать нажатие кнопки, и рисовать точки? Или как-то поумнее можно?
PM MAIL   Вверх
Pilger
Дата 17.2.2010, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 257
Регистрация: 10.5.2008
Где: Германия

Репутация: нет
Всего: нет



Можно создать интерфейс(или абстрактный класс), описывающий графический объект и каждый объект для рисования(будь то линия или круг) наследовать от этого класса. Ну и затем, когда пользователь рисует, все нарисованные объекты сохраняются в какой нибудь List и в Paint они же и прорисовываются. diadiavova неплохой примерчик скидывал, правда на VB.NET, если интересно.

http://forum.vingrad.ru/forum/topic-270361...0%B8%D0%B5.html

Это сообщение отредактировал(а) Pilger - 17.2.2010, 21:16


--------------------
Ein Leben nach der Schleife existiert, nur wenn die Schleife terminiert.
PM MAIL ICQ   Вверх
explorer
Дата 18.2.2010, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 104
Регистрация: 26.2.2008

Репутация: 1
Всего: 2



Можно сделать иначе. Использование GraphicsPath облегчит задачу. Нужно при нажатии на клавишу мыши отслееживат событие MouseMove. Проблема в том, что это событие генерируется очень часто, даже чаще чем хотелось бы, поэтому придется запоминать не каждую координату, возвращаему в этом событии, а, скажем, каждую 4-ю и передавать её в GraphicsPath. Ползователь отпустил кнопку - все, заканчиваем сохранять координаты. А потом просто в OnPaint отрисовываем весь List<GraphicsPath>. 
--------------------
 
PM MAIL WWW ICQ   Вверх
C4EBA
Дата 18.2.2010, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 13.4.2009

Репутация: нет
Всего: 1



afanp, есть книга 
Жарков "Компьютерная графика, мультимедиа и игры на Visual C# 2005" (814 c).pdf
В книге есть глава 26 "Рисование при помощи перемещения мыши". Все подробно разбирается:
постановка задачи, алгоритм решения, разработка формы, разработка программы.
К книге прилагаются листинги. Книга и листинги есть в Сети.
PM   Вверх
Pilger
Дата 18.2.2010, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 257
Регистрация: 10.5.2008
Где: Германия

Репутация: нет
Всего: нет



Цитата(explorer @ 18.2.2010,  09:41)
Можно сделать иначе.

Принцип тот же. Дело вкуса.


--------------------
Ein Leben nach der Schleife existiert, nur wenn die Schleife terminiert.
PM MAIL ICQ   Вверх
afanp
Дата 19.2.2010, 07:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 25.11.2008

Репутация: нет
Всего: нет



всем спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0421 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.