|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|||||||||||||||||
Необработанное исключение по адресу21.03.2023, 16:46. Показов 6563. Ответов 50
Метки нет (Все метки)
Здравствуйте! Мне нужно сделать следующее: На диалоговой панели расположить временное окно. В центре этого окна нарисовать мишень из 10 полей и в каждом поле вывести его значение (от 1 до 10). Поля выделять различными цветами, выбранными с помощью стандартной диалоговой панели выбора цвета.
Я решил делать так: Создать шаблон диалоговой панели в него встроить дочернее окно(хотя по условию нужно временное, возможно, это ошибка), далее в функции окна рисовать мишень и по клику левой клавиши мыши, если этот клик попадает в одно из полей мишени, должна запуститься стандартная диалоговая панель выбора цвета, в которой я выбираю цвет и этим цветом окрашивается выбранное поле. Но при запуске стандартной диалоговая панель выбора цвета вылетает ошибка, причём ошибка указывает на функцию DialogBoxIndirect(), ошибка такая:
Код: CreateDlg
WndProc,DlgProc
PopProc
0
|
|||||||||||||||||
| 21.03.2023, 16:46 | |
|
Ответы с готовыми решениями:
50
Необработанное исключение по адресу на х86, на х64 работает норм Необработанное исключение и тд Необработанное исключение |
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
|
| 22.03.2023, 06:03 | |
|
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|||||||
| 23.03.2023, 04:58 [ТС] | |||||||
|
Ex6_10.rar При запуске диалогового окна вижу такую картину. Хотя указываю цвета по умолчанию:
0
|
|||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|
| 23.03.2023, 20:59 [ТС] | |
|
Алексей1153, Ну и, теперь что не нравится? Всё, что просили, прикрепил.
0
|
|
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
|
| 23.03.2023, 21:02 | |
|
Liss29, сделай ZIP, завтра гляну
Или кто-то уже глянет
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|||||||||||||||||
| 23.03.2023, 21:22 [ТС] | |||||||||||||||||
0
|
|||||||||||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|
| 23.03.2023, 21:25 [ТС] | |
|
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|
| 23.03.2023, 21:35 [ТС] | |
|
Хотя, если COLOR_WINDOW = 5, то, по сути - это чёрный цвет, если выбрать любое табличное значение цвета COLOR_... и создать с ним кисть, то, получается, цвет этой кисти будет чёрным.
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|
| 23.03.2023, 22:32 [ТС] | |
|
По сути, то, что требовалось я реализовал, но есть одно но, скорее эстетическое замечание, когда цвет выбран и область мишени закрашена выбранным цветом, цифры 8, 9 в их пустых местах цвет остаётся белым, хотя режим фона установлен как TRANSPARENT, как сделать так, чтобы отверстия-пустые места были того же цвета т.е. цвета, которым закрашена данная область мишени.
0
|
|
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
||
| 24.03.2023, 08:38 | ||
|
Добавлено через 13 минут SetBkMode(hdc, TRANSPARENT); - это работает, просто ты после вывода текста заливаешь область ExtFloodFill , вот и остаются карманы. Текст надо выводить поверх всегои ещё момент - чтобы не ковыряться с восстановлением старых объектов SelectObject(hdc, hOldBrush);, используй SaveDC / RestoreDC
1
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
||||||||
| 24.03.2023, 21:34 [ТС] | ||||||||
0
|
||||||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
||||||||
| 24.03.2023, 21:49 | ||||||||
полагаю, SaveDc/RestoreDC в данном случае можно даже за цикл вынести (лямбду тоже). Но это нужно уточнить ![]() Добавлено через 2 минуты лямбду я добавил для гарантии вызова RestoreDC
0
|
||||||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
||||
| 24.03.2023, 22:20 [ТС] | ||||
![]()
0
|
||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
|||
| 24.03.2023, 22:23 | |||
|
Liss29, CreateSolidBrush принимает аргументом тип COLORREF, а не индекс системного цвета
![]()
0
|
|||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
||||
| 24.03.2023, 22:30 [ТС] | ||||
|
Думаю, я понял SaveDC() перед изменением контекста устройства, а восстанавливаем, после всех манипуляций с контекстом устройства, только, особой выгоды не вижу, ну одна переменная устраняется, я про свой случай, ну хорошо четыре локальные переменные устраняются, разве это так ощутимо...
Добавлено через 6 минут ![]()
0
|
||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
||||
| 24.03.2023, 22:35 | ||||
|
Добавлено через 30 секунд Моё дело - предупредить, а там решай сам
0
|
||||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|||||||||||
| 24.03.2023, 23:18 [ТС] | |||||||||||
|
Добавлено через 19 минут
0
|
|||||||||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
||||||||||||||||
| 25.03.2023, 08:39 | ||||||||||||||||
|
1) в строке 23 убрать SaveDC. 2) в строке 51 вызвать RestoreDC с индексом, который был получен из SaveDC в строке 7
ну, или, да
0
|
||||||||||||||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
||
| 25.03.2023, 08:46 | ||
|
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
|
|||||
| 25.03.2023, 21:23 [ТС] | |||||
![]() Добавлено через 1 минуту
0
|
|||||
|
фрилансер
6510 / 5772 / 1135
Регистрация: 11.10.2019
Сообщений: 15,418
|
|
| 25.03.2023, 22:12 | |
|
0
|
|
| 25.03.2023, 22:12 | |
|
Необработанное исключение Необработанное исключение Необработанное исключение: Нарушение прав доступа при чтении Необработанное исключение. Нарушение прав доступа при чтении
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|