gpt4 book ai didi

c++ - 努力学习winapi。制作了第一个程序,它必须向我展示一个窗口。 CMD显示但是没有窗口

转载 作者:行者123 更新时间:2023-11-28 07:16:43 24 4
gpt4 key购买 nike

#include<windows.h>

LPSTR NazwaKlasy = "Klasa Okienka";
MSG Komunikat;

LRESULT CALLBACK WndProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam );

int WINAPI WinMain( HINSTANCE hInstance,HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nShowCmd)
{
WNDCLASSEX wc;

wc.cbSize = sizeof( WNDCLASSEX );
wc.style = 0;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon( NULL, IDI_APPLICATION );
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground =( HBRUSH )( COLOR_WINDOW + 1 );
wc.lpszMenuName = NULL;
wc.lpszClassName = NazwaKlasy;
wc.hIconSm = LoadIcon( NULL, IDI_APPLICATION );

//tutaj kłądż okienka
HWND hwnd;
hwnd = CreateWindowEx ( WS_EX_CLIENTEDGE,NazwaKlasy,"Okienko",WS_EX_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,400,400,NULL,NULL,hInstance,NULL);

//koniec obszaru okienek

ShowWindow( hwnd, nShowCmd ); // Pokaż okienko...
UpdateWindow( hwnd );

while( GetMessage( & Komunikat, NULL, 0, 0 ) )
{
TranslateMessage( & Komunikat );
DispatchMessage( & Komunikat );
}

return Komunikat.wParam;
}
LRESULT CALLBACK WndProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
switch( msg )
{
case WM_CLOSE:
DestroyWindow( hwnd );
break;

case WM_DESTROY:
PostQuitMessage( 0 );
break;

default:
return DefWindowProc( hwnd, msg, wParam, lParam );
}

return 0;
}

编辑器没有显示任何错误并且运行程序没有任何问题但是没有窗口的迹象我在编程方面不是很有经验,所以它很可能是一个我无法找到的愚蠢错误,但每个人都必须从某个地方开始
我想我的帖子格式正确

最佳答案

您没有注册窗口类。您填写了 WNDCLASSEX 结构,但是您忽略了调用 RegisterClassEx 来实际注册它。

关于c++ - 努力学习winapi。制作了第一个程序,它必须向我展示一个窗口。 CMD显示但是没有窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20108208/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com