Win32 编程 Windows API 使用(二)

 

有了上一章的实验,我们来创建第一个 自己设计的窗口

按照之前的步骤,再创建一个新的项目,文件名称是 app.cpp (也可以是app.c),并将这个类取名为 MyApp,即最后运行的程序为MyAPP.exe

 

运行一遍发现这个窗口没法拖动,也没办法关闭。但是,窗口也确实显示出来了。

#include <windows.h>

LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);

int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow)
{
	WNDCLASS wc = {};
	wc.lpfnWndProc = WindowProc;
	wc.hInstance = hInstance;
	wc.lpszClassName = L"应用程序MyAPP";

	RegisterClass(&wc);
	HWND hwnd = CreateWindowEx(WS_EX_TOPMOST, L"应用程序MyApp", L"MyFrame边框图", WS_OVERLAPPEDWINDOW, 100, 100, 800, 600, NULL, NULL, hInstance, NULL);

	ShowWindow(hwnd, nCmdShow);
	UpdateWindow(hwnd);

	MSG msg;
	while (GetMessageW(&msg, NULL, 0, 0)>0)
	{
		TranslateMessage(&msg);
		DispatchMessageW(&msg);
	}


}
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	switch (uMsg)
	{
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return DefWindowProc(hwnd, uMsg, wParam, lParam);
}

  

从Visual Studio 中中止运行的程序,先分析代码过程。

 

posted @ 2024-01-21 12:10  nerocm  阅读(47)  评论(0编辑  收藏  举报