Форум программистов, компьютерный форум, киберфорум
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
9 / 9 / 2
Регистрация: 02.04.2015
Сообщений: 197
1

Функция CreateWindow

25.02.2016, 18:33. Просмотров 1257. Ответов 4
Метки нет (Все метки)

Здравствуйте. У меня такой вопрос возник. Для чего нужен последний параметр функции CreateWindow ? Вот что я нашел в интернете:
Указывает на значение, переданное окну через структуру CREATESTRUCT, переданную в параметре lParam сообщения WM_CREATE. Если прикладная программа вызывает CreateWindow, чтобы создать рабочее окно многодокументного интерфейса (MDI), lpParam должен указывать на структуру CLIENTCREATESTRUCT.
Я так понял, что данный параметр используется для создания многодокуметного оконного приложения. В частности для создания дочернего окна. Может кто-нибудь разъяснить поподробней об этом параметре?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.02.2016, 18:33
Ответы с готовыми решениями:

Функция CreateWindow не создает дочернее окно
Приветствую! Застрял с довольно идиотской проблемой. Необходимо создать приложение с дочерним...

CreateWindow
Подскажите пожалуйста почему у меня подчеркивает CreateWindow в case WM_CREATE и MAX_LOADSTRING. ...

Ошибка CreateWindow
#include <windows.h> #define width 640; #define height 480; LRESULT CALLBACK WindowProc(...

CreateWindow не работает
Здравствуйте, я новичок в WinApi,у меня произошла проблема с созданием окна моего...

4
897 / 418 / 159
Регистрация: 02.04.2014
Сообщений: 1,206
25.02.2016, 19:31 2
Лучший ответ Сообщение было отмечено mracobes9 как решение

Решение

Про MDI ты понял правильно.
А при создании обычного окошка через этот параметр можно передавать указатель на любые требующиеся для окна данные. Например:

C++
1
2
3
TCHAR sCaption[] = _T("Привет!");
...
CreateWindow(..., ... , (LPVOID)&sCaption);
А в диалоговой процедуре окна эти данные можно обработать:
C++
1
2
3
4
5
6
7
8
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
    ...
    switch (message)
    {
    case WM_CREATE:
    TCHAR *pData = (TCHAR *)lParam;
    SetWindowText(hWnd, pData );
    ...
2
9 / 9 / 2
Регистрация: 02.04.2015
Сообщений: 197
25.02.2016, 19:35  [ТС] 3
rao, спасибо, а можете привести еще примеры данных передаваемых через данный параметр ? Желательно, имеющие практическую значимость.
0
119 / 141 / 46
Регистрация: 31.10.2014
Сообщений: 721
Записей в блоге: 1
25.02.2016, 19:37 4
Указатель на класс, т.е. имеется класс который создает окно.
1
9 / 9 / 2
Регистрация: 02.04.2015
Сообщений: 197
25.02.2016, 19:39  [ТС] 5
demmax2004, спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2016, 19:39

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

CreateWindow выдает ошибку
Здравствуйте. Кол писал по аналогии из книги. Практически все идинтично. Книжный вариант...

Не создается окно CreateWindow
#include <windows.h> #include <stdlib.h> LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);...

Не работает CreateWindow WC_LINK
Просто ничего нет. #include "stdafx.h" #include "ECCrossout.h" #include <Shellapi.h>...

CreateWindow возвращает NULL
Простейшая программа, но почему-то CreateWindow возвращает NULL, уже и не знаю где искать ошибку,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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