二、右击源文件,添加一个cpp文件,名字随便取
三、编写代码,添加程序入口函数
#include <Windows.h>
INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR lpCmdLine, INT nCmdShow) //相当于main函数
{
return 0;
}
四、右击项目,查看属性,修改链接器,因为我们编写的是窗口程序,所以将子系统修改为窗口
五、代码编写信息框函数
1、第一个参数写NULL
2、第二个参数是信息框内容
3、第三个参数是信息框标题
4、第四个参数是弹窗的类型
MessageBox(NULL, L"aiyou", L"bucuo", MB_OK);
六、运行该程序,成功弹出信息框
七、右击资源文件,添加资源,选择Icon,点击导入,选择设计好的ico文件
八、运行程序,自动生成图标
九、当我们导入多个图标资源的时候,打开resource.h文件
#define IDI_ICON1 103
#define IDI_ICON2 102
默认选择的是,后面数字比较小的
十、右击资源文件,添加资源,选择Dialog,点击新建
十一、设计界面,拖动要用的组件,修改相关属性值
十二、回到cpp文件编写关联代码
#include <Windows.h>
#include"resource.h"
INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR lpCmdLine, INT nCmdShow) //相当于main函数
{
int n = DialogBox(hInstance, (LPCWCHAR)IDD_DIALOG1, NULL, NULL);
//1、指本对话框属于当前进程,HINSTANCE是窗口进程句柄
//2、本对话框使用哪个对话框资源,比如您定义了多个对话框资源,每个都有一个ID,本参数相当于传入一个ID
//3、本对话框的父窗口是哪个,NULL表示没有父窗口
//4、本对话框的消息处理函数,一个对话框相当于一个窗口,而窗口有对应的消息处理函数
return 0;
}
十三、编写一个回调函数,也就是我们自己设计一个功能,然后通过API实现
INT_PTR CALLBACK theProc(_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
{
switch (uMsg)
{
case WM_COMMAND://点击按钮
OnCommand(hwndDlg, LOWORD(wParam));
break;
case WM_INITDIALOG://窗口启动时运行
break;
case WM_LBUTTONDOWN://左击
MessageBox(NULL, _T("左击"), _T("左击"), MB_OK);
break;
case WM_RBUTTONDOWN://右击
MessageBox(NULL, _T("右击"), _T("右击"), MB_OK);
break;
}
return 0;
}
十四、编写按钮事件,不同的按钮实现不同的功能
void OnCommand(HWND hWnd, UINT nID)
{
if (nID == IDC_BUTTON2)
{
EndDialog(hWnd, 2);
}
if (nID == IDC_BUTTON1)
{
int nLeft = GetDlgItemInt(hWnd, IDC_EDIT1, NULL, TRUE);
int nRight = GetDlgItemInt(hWnd, IDC_EDIT2, NULL, TRUE);
SetDlgItemInt(hWnd, IDC_EDIT3, nLeft + nRight, TRUE);
}
}
十五、运行效果
十六、项目下载
关注编程有你公众号,后台回复:20220512