|
154 / 31 / 11
Регистрация: 29.10.2012
Сообщений: 397
|
||||||
Не получается рисовать больше чем одну линию в win3207.11.2012, 22:52. Показов 2519. Ответов 1
Метки нет (Все метки)
Здравствуйте снова,
Цель такова: надо сделать программу типа Paint. Одна из возможностей - рисовать прямую линию. Начало там, где щелкают мышкой, пока кнопка зажата, можно двигать курсор куда угодно, а при отпускании линия фиксируется. Проблема в том, что, если использую InvalidateRect(hWnd, 0, true), то тогда при рисовании второй линии первая исчезает, а если использовать InvalidateRect(hWnd, 0, false), то линии рисуются при каждом Mouse Move с нажатой клавишей, а предыдущие не стираются. Помогите пожалуйста.
0
|
||||||
| 07.11.2012, 22:52 | |
|
Ответы с готовыми решениями:
1
Как в VB сделать паузу больше,чем в одну минуту? Как рисовать линию с координатами double Почему Microsoft больше не публикует книги по Win32 API? В частности, разработка графического интерфейса с Win32 |
|
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
|
| 07.11.2012, 23:49 | |
|
при таком дизайне врятли у вас что-то хорошее получится.
примерное решение может быть таким: пусть есть объект линия, в котором есть поля: координаты первой точки, координаты второй точки и цвет. при перерисовки окна нужно прорисовывать все линии из этого массива. кроме этого есть еще временный объект линии, который тоже должен прорисовываться, если он есть. когда юзер тыкает мышкой по экрану, появляется этот временный объект линии, у которого первая точка - это координаты щелчка, вторая точка - координаты мыши. когда юзер отпускает мышку, копия этой линии попадает в массив, а сам объект временной линии исчезает и больше не прорисовывается, пока юзер не повторит то, что проделал первый раз. тут появляется возможность редактировать уже имеющиеся линии, удалять их и т.п. можно кстати без этой временной линии и обойтись одним лишь массивом. когда юзер тыкает мышкой, в конец массива заносится новая линия. когда он двигает мышкой, вторая точка этой последней линии подправляется на координаты мышки и посылается запрос на перерисовку. перерисовка простая - пробежать по всему массиву линий и нарисовать их. Тут нужно еще вспомнить классический пример ООП - базовый класс фигуры и всякие производные от него. В этом случае можно будет работать не только с линиями, но и с любыми другими фигурами.
1
|
|
| 07.11.2012, 23:49 | |
|
Помогаю со студенческими работами здесь
2
Исходник LineTo(),или как рисовать линию Разработать программу позволяющюю рисовать линию между точками Рисовать в Win32 как в Paint Как рисовать линию с помощью мыши, не стирая уже нарисованного Прекратить рисовать линию, если ее конец достиг другой нарисованной фигуры (круга) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|