設置 | 登錄 | 註冊

目前共有14篇帖子。

【案例】给Win32程序的“关于”对话框添加一个按钮

1樓 巨大八爪鱼 2015-12-1 14:26
首先,在Visual Studio(我用的版本是Premium 2012)中创建一个Win32项目工程,也就是:

然后编译运行,运行结果是如下窗口:

2樓 巨大八爪鱼 2015-12-1 14:27
在左边的Solution Explorer中找到Win32Project1.rc文件,双击打开。

3樓 巨大八爪鱼 2015-12-1 14:28

双击IDD_ABOUTBOX打开。并在窗口中拖入一个按钮,上面显示的文字(Caption)随便写,这里我写的是Check。
4樓 巨大八爪鱼 2015-12-1 14:28
5樓 巨大八爪鱼 2015-12-1 14:30
默认分配给这个按钮的ID是IDC_BUTTON1,这个会在之后的程序中用到:

打开Resource.h后就可以看到,其实这个ID是一个宏定义。

6樓 巨大八爪鱼 2015-12-1 14:32
最后,打开主程序文件Win32Project1.cpp,在函数About里添加如下内容:

其中IDC_BUTTON1就是用于标示刚才所创建的按钮,鼠标点击按钮后执行的内容就是调用MessageBox这个对话框函数。
7樓 巨大八爪鱼 2015-12-1 14:34
然后就可以运行程序了。

点击刚才添加的Check按钮后弹出MessageBox对话框:

其中的图标i是由MB_ICONINFORMATION决定的。
可以选用其他值:
MB_ICONWARNING 三角形的黄色惊叹号
MB_ICONQUESTION 问号
MB_ICONERROR 红叉
8樓 巨大八爪鱼 2015-12-1 14:37
下面我来解释一下这句话:
if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
其中IDOK就是点击OK按钮,IDCANCEL则是手动点击About窗口右上角的关闭按钮,或者在标题栏右键菜单中点击了Close命令(如图所示)。

9樓 巨大八爪鱼 2015-12-1 18:17

加了About窗口鼠标左键点击次数计数代码。
10樓 巨大八爪鱼 2015-12-1 18:21
更改按钮上的文字:
SendMessage((HWND)lParam, WM_SETTEXT, (WPARAM)NULL, (LPARAM)L"Checked");

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。