![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
В результате должна получиться форма, на которой пользователь просто водит мышью и оставляет свои каракули. Обрабатывать нажатие кнопки, и рисовать точки? Или как-то поумнее можно?
|
|||
|
||||
| Pilger |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 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. |
|||
|
||||
| explorer |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 104 Регистрация: 26.2.2008 Репутация: 1 Всего: 2 |
Можно сделать иначе. Использование GraphicsPath облегчит задачу. Нужно при нажатии на клавишу мыши отслееживат событие MouseMove. Проблема в том, что это событие генерируется очень часто, даже чаще чем хотелось бы, поэтому придется запоминать не каждую координату, возвращаему в этом событии, а, скажем, каждую 4-ю и передавать её в GraphicsPath. Ползователь отпустил кнопку - все, заканчиваем сохранять координаты. А потом просто в OnPaint отрисовываем весь List<GraphicsPath>.
--------------------
|
|||
|
||||
| C4EBA |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.4.2009 Репутация: нет Всего: 1 |
afanp, есть книга
Жарков "Компьютерная графика, мультимедиа и игры на Visual C# 2005" (814 c).pdf В книге есть глава 26 "Рисование при помощи перемещения мыши". Все подробно разбирается: постановка задачи, алгоритм решения, разработка формы, разработка программы. К книге прилагаются листинги. Книга и листинги есть в Сети. |
|||
|
||||
| Pilger |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 257 Регистрация: 10.5.2008 Где: Германия Репутация: нет Всего: нет |
Принцип тот же. Дело вкуса. -------------------- Ein Leben nach der Schleife existiert, nur wenn die Schleife terminiert. |
|||
|
||||
| afanp |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 25.11.2008 Репутация: нет Всего: нет |
всем спасибо!
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |