#include <Windows.h>
#include "resource.h"
#include <stdio.h>
using namespace std;
// Прототип функции окна (обработчик событий)
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg)
{
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case WM_PAINT:
PAINTSTRUCT ps;
HDC hdc;
hdc = BeginPaint(hwnd, &ps);
FillRect(hdc, &ps.rcPaint, (HBRUSH)(COLOR_WINDOW + 1));
EndPaint(hwnd, &ps);
return 0;
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
// Прототип функции окна (обработчик событий для диалогового окна)
INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg)
{
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == IDOK)
{
EndDialog(hwndDlg, IDOK);
return TRUE;
}
break;
}
return FALSE;
}
extern const wchar_t lpszClassName;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
// Создание класса окна
WNDCLASS wc = {};
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = L"MyWindowClass";
RegisterClass(&wc);
// Создание окна
HWND hwnd = CreateWindowEx(
NULL,
L"MyWindowClass",
L"My Window",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, hInstance, NULL);
// Проверка создания окна
if (hwnd == NULL)
{
return 0;
}
// Отображение окна
ShowWindow(hwnd, nCmdShow);
// Создание модального диалогового окна
int result = DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG), hwnd, DialogProc);
if (result == IDOK)
{
// Действия после закрытия диалогового окна
}
// Основный цикл обработки сообщений
MSG msg = {};
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
Я пытаюсь создать окно с помощью WINAPI на языке С++, потом хочу добавить дочернее окно ну или модельное диалоговое окно, но вылезает ошибка! я еще новичек, задание дали такое( помогите пожалуйста решить проблему и по возможности помочь сделать это задание