Здравствуйте! Наверное помните что я спрашивал про вывод текста в OpenGL: http://www.wasm.ru/forum/viewtopic.php?id=43268 Программа почти закончена, осталось 2 косяка: 1) После запуска или разворачивания окна график не рисуется. В конце обработки WM_INITDIALOG выполняется переход на обработчик WM_PAINT. Но в результате график рисуется только при уходе границы окна за экран или изменении его размера. Ищите в файле 3OpenGL_window.cpp строку "//UpdateWindow(hWnd);" 2) Окно не принимает сообщений о нажатии клавиш. Принимал сообщения WM_KEYDOWN, WM_SYSCHAR, WM_CHAR, ставил точку останова, но она ни разу не сработала. Ищите в файле 3OpenGL_window.cpp строку "//case WM_KEYDOWN:" Visual Studio 2008 Express. Говорите если в приложении не хватает файлов.
Это вам надо искать, почему у вас не вызывается WM_PAINT и другие сообщения. Бред какой-то, как человек не может разобраться в таких элементарных вещах?
Сообщение WM_PAINT передается, график рисуется. Но не всегда. Может дело в том, что сообщение посылается окну, а график рисуется не в окне, а на дочерней надписи "График"?
Не стыдно такую фигню спрашивать? Вы кто по профессии, если не секрет? Али очередной студент? Ну ладно бы ещё в нубскую ветку запостил, я бы прошёл мимо и не обратил внимания. Туторов как работать с сообщениями тьма, хотя бы и на этом сайте. Не умеете искать и использовать информацию.
Первая проблема разрешилась. Оказывается, сообщение WM_INITDIALOG посылается окну, не при создании диалога, а при его регистрации. Разумеется в этот момент окно еще не создано, поэтому рисование на нем не выполняется. Добавил таймер, к-й периодически посылает приложению собственное сообщение, при котором заново перерисовывается окно. Осталась вторая проблема.
AndreyMust19 Не окно, а диалоговая процедура. Потому как еще в 2002 году было всем известно, что оконная процедура диалога его превращает в WM_COMMAND и то вроде не для всех кодов. http://www.delphikingdom.com/asp/answer.asp?IDAnswer=10415 (сообщение 13-03-2002 15:27)
AndreyMust19 >Первая проблема разрешилась. Оказывается, сообщение WM_INITDIALOG посылается окну, не при создании диалога, а при его регистрации. Разумеется в этот момент окно еще не создано чего-чего ??