Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
constant
0 / 0 / 0
Регистрация: 22.07.2011
Сообщений: 7
#1

Подмена дескриптора родительского окна при вызове CreateWindow - C++

27.10.2011, 06:43. Просмотров 501. Ответов 0
Метки нет (Все метки)

В оконной процедуре
C++
1
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
Пытаюсь при создании главного окна, создать контрол кнопку.

C++
1
2
3
case WM_CREATE:
 
CreateWindow(_T("BUTTON"),_T("OK"),WS_VISIBLE | WS_CHILD,100,100,50,30,hWnd,NULL,NULL,NULL);
При выполнении кнопка не создается, вместо этого происходит следующее. Значение переменной hWnd дескриптора главного окна после выполнения вышеуказанной функции изменяется на другое ! Причем при трассировке выполнение кода не идет дальше, а выполняется опять эта строчка, опять с заменой дескриптора. И так три-четыре раза.
Происходит с контролом BUTTON, c CHECKBOX-ом вроде нет. При этом в предыдущих программах делал тоже самое - все работало !
Интересно было бы разобраться что же все-таки происходит, в столь странном поведении программы.

Добавлено через 11 часов 29 минут
Все ясно. Я просто создаю сэмплы для контролов, чтобы их потом можно было использовать в других проектах. Проект для button -а не мудрствуя лукаво назвал button-ом, использовал стандартнй VS темплейт для создания приложения. В результате в szWindowClass записалась button.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2011, 06:43     Подмена дескриптора родительского окна при вызове CreateWindow
Посмотрите здесь:

При вызове CreateWindow в функции вылетает необработанное исключение (найти и исправить ошибку) - C++
При вызове CreateWindow в функции HRESULT Render_CreateWindow(LPCTSTR wclass, LPCTSTR wname, LPCSTR icon) { // Регистрация класса ...

ООП в C++: Вызов родительского конструктора с параметром при создании объекта дочернего класса - C++
Здравствуйте! Столкнулся с такой проблемой: если есть родительский класс с конструктором, то при создании дочернего объекта от этого...

Ошибка при вызове деструктора - C++
Подскажите, что не так с этим деструктором? Просто выдает ошибку. Если его убираю то все идет норм. Если же оставляю, то куча всяких...

Проблема при вызове функции - C++
Написал для себя простенькую напоминалку, выводящую указанное сообщение через определённый промежуток времени(ну там, "отойди от компа,...

Ошибка при вызове деструктора - C++
Программа компилиться нормально,но после выполнения system("pause"); выползает непонятное окно,и указывает на ошибку в деструкторе.В чем...

Ошибка при вызове WSARecv - C++
Добрый день. Пытаюсь написать TCP клиент, но после реконнекта от сервера иногда возникают ошибки. Открываю сокет так: ...

_block_type_is_valid при вызове delete() - C++
код для генерации случайного графа #define m 3 //Число входящих и исходящих ребер. #define N 200 //Минимально требуемое число...

Ошибка при вызове деструктора - C++
Не могу дописать лабу... Надо создать 4 класса, описать поля и методы. Выкладываю исходники: Самый главный класс - Order. Выбивает ошибку в...

Ошибка при вызове функции - C++
Ошибка в строке 90, при пошаговом выполнении она появляется при вызове функции, до захода в нее, хотя список сформирован правильно, т.к. до...

Ошибка при вызове метода - C++
Не пойму в чем ошибка... #include <vector> #include <iostream> template <typename T> class Beast { public: int x; ...

Что происходит при вызове? - C++
class A { ... }; void f(A &a) { ... } A a; ...

Проблемы при вызове деструктора - C++
В процессе работы программы указатель на класс Dictionary,который является членом класса DictionaryManager,должен указывать на разные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru