|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|||||||||||||||||
Необработанное исключение по адресу21.03.2023, 16:46. Показов 6241. Ответов 50
Метки нет (Все метки)
Здравствуйте! Мне нужно сделать следующее: На диалоговой панели расположить временное окно. В центре этого окна нарисовать мишень из 10 полей и в каждом поле вывести его значение (от 1 до 10). Поля выделять различными цветами, выбранными с помощью стандартной диалоговой панели выбора цвета.
Я решил делать так: Создать шаблон диалоговой панели в него встроить дочернее окно(хотя по условию нужно временное, возможно, это ошибка), далее в функции окна рисовать мишень и по клику левой клавиши мыши, если этот клик попадает в одно из полей мишени, должна запуститься стандартная диалоговая панель выбора цвета, в которой я выбираю цвет и этим цветом окрашивается выбранное поле. Но при запуске стандартной диалоговая панель выбора цвета вылетает ошибка, причём ошибка указывает на функцию DialogBoxIndirect(), ошибка такая:
Код: CreateDlg
WndProc,DlgProc
PopProc
0
|
|||||||||||||||||
| 21.03.2023, 16:46 | |
|
Ответы с готовыми решениями:
50
Необработанное исключение по адресу на х86, на х64 работает норм Необработанное исключение и тд Необработанное исключение |
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
|
| 22.03.2023, 06:03 | |
|
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|||||||
| 23.03.2023, 04:58 [ТС] | |||||||
|
Ex6_10.rar При запуске диалогового окна вижу такую картину. Хотя указываю цвета по умолчанию:
0
|
|||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|
| 23.03.2023, 20:59 [ТС] | |
|
Алексей1153, Ну и, теперь что не нравится? Всё, что просили, прикрепил.
0
|
|
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
|
| 23.03.2023, 21:02 | |
|
Liss29, сделай ZIP, завтра гляну
Или кто-то уже глянет
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|||||||||||||||||
| 23.03.2023, 21:22 [ТС] | |||||||||||||||||
0
|
|||||||||||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|
| 23.03.2023, 21:25 [ТС] | |
|
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|
| 23.03.2023, 21:35 [ТС] | |
|
Хотя, если COLOR_WINDOW = 5, то, по сути - это чёрный цвет, если выбрать любое табличное значение цвета COLOR_... и создать с ним кисть, то, получается, цвет этой кисти будет чёрным.
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|
| 23.03.2023, 22:32 [ТС] | |
|
По сути, то, что требовалось я реализовал, но есть одно но, скорее эстетическое замечание, когда цвет выбран и область мишени закрашена выбранным цветом, цифры 8, 9 в их пустых местах цвет остаётся белым, хотя режим фона установлен как TRANSPARENT, как сделать так, чтобы отверстия-пустые места были того же цвета т.е. цвета, которым закрашена данная область мишени.
0
|
|
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
||
| 24.03.2023, 08:38 | ||
|
Добавлено через 13 минут SetBkMode(hdc, TRANSPARENT); - это работает, просто ты после вывода текста заливаешь область ExtFloodFill , вот и остаются карманы. Текст надо выводить поверх всегои ещё момент - чтобы не ковыряться с восстановлением старых объектов SelectObject(hdc, hOldBrush);, используй SaveDC / RestoreDC
1
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
||||||||
| 24.03.2023, 21:34 [ТС] | ||||||||
0
|
||||||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
||||||||
| 24.03.2023, 21:49 | ||||||||
полагаю, SaveDc/RestoreDC в данном случае можно даже за цикл вынести (лямбду тоже). Но это нужно уточнить ![]() Добавлено через 2 минуты лямбду я добавил для гарантии вызова RestoreDC
0
|
||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
||||
| 24.03.2023, 22:20 [ТС] | ||||
![]()
0
|
||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
|||
| 24.03.2023, 22:23 | |||
|
Liss29, CreateSolidBrush принимает аргументом тип COLORREF, а не индекс системного цвета
![]()
0
|
|||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
||||
| 24.03.2023, 22:30 [ТС] | ||||
|
Думаю, я понял SaveDC() перед изменением контекста устройства, а восстанавливаем, после всех манипуляций с контекстом устройства, только, особой выгоды не вижу, ну одна переменная устраняется, я про свой случай, ну хорошо четыре локальные переменные устраняются, разве это так ощутимо...
Добавлено через 6 минут ![]()
0
|
||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
||||
| 24.03.2023, 22:35 | ||||
|
Добавлено через 30 секунд Моё дело - предупредить, а там решай сам
0
|
||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|||||||||||
| 24.03.2023, 23:18 [ТС] | |||||||||||
|
Добавлено через 19 минут
0
|
|||||||||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
||||||||||||||||
| 25.03.2023, 08:39 | ||||||||||||||||
|
1) в строке 23 убрать SaveDC. 2) в строке 51 вызвать RestoreDC с индексом, который был получен из SaveDC в строке 7
ну, или, да
0
|
||||||||||||||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
||
| 25.03.2023, 08:46 | ||
|
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,637
|
|||||
| 25.03.2023, 21:23 [ТС] | |||||
![]() Добавлено через 1 минуту
0
|
|||||
|
фрилансер
6496 / 5727 / 1133
Регистрация: 11.10.2019
Сообщений: 15,292
|
|
| 25.03.2023, 22:12 | |
|
0
|
|
| 25.03.2023, 22:12 | |
|
Необработанное исключение Необработанное исключение Необработанное исключение: Нарушение прав доступа при чтении Необработанное исключение. Нарушение прав доступа при чтении
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время?
Никакой пенсии. Никакого нового. . .
|
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю
Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы
Кратко. . .
|
|
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем
**Полевые заметки о двухнедельной совместной работе**. . .
|
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики
1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
|
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928
Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
|
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего
Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
|