⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 asda.cpp

📁 此代码是为初步接触多线程的人员介绍的用CreateThread()函数创建窗口线程。
💻 CPP
字号:
// asda.cpp : Defines the entry point for the application.
//

#include "stdafx.h"
#include<windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
DWORD WINAPI mythread(void *p);

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
 	// TODO: Place code here.
	WNDCLASSEX wndclass;
	static char szAppName[]="Hello Everyone";
	wndclass.cbSize=sizeof(wndclass);
	wndclass.style=CS_HREDRAW|CS_VREDRAW;
	wndclass.lpfnWndProc=WndProc;
	wndclass.cbClsExtra=0;
	wndclass.cbWndExtra=0;
	wndclass.hInstance=hInstance;
	wndclass.hIcon=LoadIcon(hInstance,IDI_APPLICATION);
	wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
	wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
	wndclass.lpszMenuName=NULL;
	wndclass.lpszClassName=szAppName;
	wndclass.hIconSm=LoadIcon(NULL,IDI_APPLICATION);
	RegisterClassEx(&wndclass);

	DWORD dw;
	HANDLE handle;
	handle=CreateThread(NULL,0,mythread,(void*)&wndclass,0,&dw);

	CloseHandle(handle);
	::mythread(&wndclass);

	return 0;
}

DWORD WINAPI mythread(void *p)
{
	HWND hWnd;
	MSG msg;
	WNDCLASSEX *pw=(WNDCLASSEX *)p;

	hWnd=CreateWindow(
		pw->lpszClassName,
		"MY Hello Program",

		WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT,
		CW_USEDEFAULT,
		CW_USEDEFAULT,
		CW_USEDEFAULT,
		NULL,
		NULL,
		pw->hInstance,
		NULL);

	ShowWindow(hWnd,SW_SHOWNORMAL);
	UpdateWindow(hWnd);
	while(GetMessage(&msg,NULL,0,0))
	{
		TranslateMessage(&msg);
		DispatchMessage(&msg);
	}
	return msg.wParam;
}

LRESULT CALLBACK WndProc(HWND hWnd,
						 UINT iMessage,
						 WPARAM wParam,
						 LPARAM lParam)
{
	HDC dc;
	PAINTSTRUCT ps;
	RECT rect;

	switch(iMessage)
	{
	case WM_PAINT:
		dc=BeginPaint(hWnd,&ps);
		GetClientRect(hWnd,&rect);
		DrawText(dc,"Hello Everyone",-1,&rect,
			DT_SINGLELINE|DT_CENTER|DT_VCENTER);

		EndPaint(hWnd,&ps);
		return 0;

	case WM_DESTROY:
		PostQuitMessage(0);
		break;

	default:
		return DefWindowProc(hWnd,iMessage,wParam,lParam);
	}
	return (0L);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -