案例
#include "stdafx.h"
//主窗口句柄
HWND Dia_main_window = NULL;
//控件句柄
HWND BTn_START = NULL;
INT_PTR CALLBACK mainproc(HWND, UINT, WPARAM, LPARAM);
int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
_In_opt_ HINSTANCE hPrevInstance,
_In_ LPWSTR lpCmdLine,
_In_ int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
// TODO: 在此处放置代码。
DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAIN_WINDOW), NULL, mainproc);
return 0;
}
// “mainproc”框的消息处理程序。
INT_PTR CALLBACK mainproc(HWND in_hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
OutputDebugStringA((char*)message);
case WM_INITDIALOG:
{
//初始化 资源id
{
//主窗口id
Dia_main_window = in_hDlg;
//根据 控件 id获取控件句柄
BTn_START = GetDlgItem(Dia_main_window, ID_BTN_START);
}
}
break;
case WM_NOTIFY://接受用户选择的信息
{
}
break;
case WM_SIZE: {
OutputDebugStringA("resize");
}
break;
case WM_COMMAND: {
if (LOWORD(wParam) == IDCANCEL)
{
EndDialog(Dia_main_window, LOWORD(wParam));
return (INT_PTR)TRUE;
}
//if (LOWORD(wParam) == ID_BTN_START) {
// OutputDebugStringA("触发 按钮 start \r\n");
// check_file::check(str_path);
//}
//else if (LOWORD(wParam) == ID_BTN_STOP) {
// OutputDebugStringA("触发 按钮 stop \r\n");
//}
}
break;
default:
//return DefWindowProc(in_hDlg, message, wParam, lParam);
break;
}
return (INT_PTR)FALSE;
}