Консультация № 182936
25.04.2011, 15:10
50.22 руб.
0 3 1
Здравствуйте! У меня возникли сложности с таким вопросом:

Вот здесь лежит архив с исходниками программы: Программа.
Несмотря на большой код, вопрос всего один и маленький.
Отчего у меня, после создания главного окна приложения, перестают показываться окна сообщений функции MessageBox(). До того, как окно создано, сообщения показываются, после - нет.
Вопрос больше относится к WinAPI.
Компилятор G++. В архиве есть батник для компиляции - mk.bat.
Если у кого-то другой компилятор, то в батнике надо поменять "windres" на тот компилятор ресурсов, который есть у вас и "g++" на тот компилятор С++, который есть у вас.

Обсуждение

Неизвестный
25.04.2011, 18:52
общий
это ответ
Здравствуйте, sir Henry!
Сразу честно признаюсь, я не знаю, почему именно так. Но данная проблема в Вашей программе из-за пустого обработчика события WM_PAINT, если Вам не нужно обрабатывать его по-особому, надо, чтобы вызвался дефолтный обработчик.
Просто закоментарьте строки
case WM_PAINT:
return(0);
И всё будет работать, я проверила.

Удачи!
5
Нда... Мне всегда не нравился с++... Компилятор довольно часто даёт маловразумительные сообщения об ошибках. И с каждым разом я убеждаюсь, что с++ язык совершенно нечеловеческий. :)<br>Спасибо, Вы мне очень помогли.
давно
Старший Модератор
312929
1973
26.04.2011, 07:26
общий
Адресаты:
И с каждым разом я убеждаюсь, что с++ язык совершенно нечеловеческий. :)

Разумеется, c++ не человеческий язык, а компьютерный
давно
Мастер-Эксперт
425
4118
26.04.2011, 07:49
общий
Адресаты:
Дык, хочется чтобы уж как-нибудь сиротинушек-программистов уважили, хотя бы чуть-чуть...
А то читал я как-то один научно-фантастический роман... Представьте, космический корабль, а там данные в ЭВМ до сих пор вводють в двоичном виде. А сюжет в следующем - на этом корабле потеряли справочник десятично-двоичной перекодировки.
Об авторе:
Я только в одном глубоко убеждён - не надо иметь убеждений! :)
Форма ответа