![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 02.06.2011
Сообщений: 282
|
![]()
в вин32 прожект по нажатию ЛКМ надо нарисовать на окошке линию, нажали еще раз - стерли линию. и так до одурения. как сделать?
я написал чтобы при запуске приложения линия рисовалась, а как отловить нажатие ЛКМ и где это добавить? Код:
|
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 02.06.2011
Сообщений: 282
|
![]() Код:
|
![]() |
![]() |
![]() |
#4 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
![]()
Код рисования должен остаться в секции case WM_PAINT, а в секции case WM_LBUTTONDOWN должен быть флаг, проверка которого осуществляется в case WM_PAINT, примерно так:
Код:
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
BeginPaint(hWnd, &ps) только для сообщения WM_PAINT, в остальных случаях нужно использовать GetDC/ReleaseDC, но делать надо как Blade.
|
![]() |
![]() |
![]() |
#6 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
![]()
Кстати, я судя по всему немного не так понял задание, в моем варианте линия будет нарисована только пока нажата ЛКМ, как только отпустили перестанет рисоваться.
Для исправления нужно изменить секцию case WM_LBUTTONDOWN Код:
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 02.06.2011
Сообщений: 282
|
![]()
сделал. но так тоже на работает
Код:
|
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]() Код:
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 02.06.2011
Сообщений: 282
|
![]()
Да, спасибо заработало. что это вы сделали?
|
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
Перерисовал окно.
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как нарисовать необычную линию | Marsel737 | Общие вопросы Delphi | 2 | 17.05.2011 20:03 |
Delphi7 помогите нарисовать линию | AlexandЯ | Помощь студентам | 15 | 12.05.2009 12:23 |
Как нарисовать линию по пикселям | DenLab | Общие вопросы Delphi | 4 | 03.12.2008 09:34 |
Нарисовать на координатной площади линию a*x+b*y+c=0 | НУБ!!! | Общие вопросы Delphi | 4 | 13.05.2008 22:48 |
Нарисовать линию под указанным градусом | nikleb | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 06.02.2008 15:22 |