Settings
|
Sign in
|
Sign up
Bar
Post
Home
>
Bar Windows API
>
View post
Reply the post
|
View all
The author has
14
posts.
1
2
Next
Last
【案例】給Win32程序的「關於」對話框添加一個按鈕
Floor 1
巨大八爪鱼
12/1/15 14:26
首先,在Visual Studio(我用的版本是Premium 2012)中創建一個Win32項目工程,也就是:
然後編譯運行,運行結果是如下窗口:
Floor 2
巨大八爪鱼
12/1/15 14:27
在左邊的Solution Explorer中找到Win32Project1.rc文件,雙擊打開。
Floor 3
巨大八爪鱼
12/1/15 14:28
雙擊IDD_ABOUTBOX打開。並在窗口中拖入一個按鈕,上面顯示的文字(Caption)隨便寫,這裡我寫的是Check。
Floor 4
巨大八爪鱼
12/1/15 14:28
Floor 5
巨大八爪鱼
12/1/15 14:30
默認分配給這個按鈕的ID是IDC_BUTTON1,這個會在之後的程序中用到:
打開Resource.h後就可以看到,其實這個ID是一個宏定義。
Floor 6
巨大八爪鱼
12/1/15 14:32
最後,打開主程序文件Win32Project1.cpp,在函數About里添加如下內容:
其中IDC_BUTTON1就是用於標示剛才所創建的按鈕,滑鼠點擊按鈕後執行的內容就是調用MessageBox這個對話框函數。
Floor 7
巨大八爪鱼
12/1/15 14:34
然後就可以運行程序了。
點擊剛才添加的Check按鈕後彈出MessageBox對話框:
其中的圖標i是由MB_ICONINFORMATION決定的。
可以選用其他值:
MB_ICONWARNING 三角形的黃色驚嘆號
MB_ICONQUESTION 問號
MB_ICONERROR 紅叉
Floor 8
巨大八爪鱼
12/1/15 14:37
下面我來解釋一下這句話:
if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
其中IDOK就是點擊OK按鈕,IDCANCEL則是手動點擊About窗口右上角的關閉按鈕,或者在標題欄右鍵菜單中點擊了Close命令(如圖所示)。
Floor 9
巨大八爪鱼
12/1/15 18:17
加了About窗口滑鼠左鍵點擊次數計數代碼。
Floor 10
巨大八爪鱼
12/1/15 18:21
更改按鈕上的文字:
SendMessage((HWND)lParam, WM_SETTEXT, (WPARAM)NULL, (LPARAM)L"Checked");
1
2
Next
Last
Content converter:
No conversion
Mainland
Taiwan
Hong Kong
Singapore
Reply the post
Content:
User:
You are currently anonymous.
Captcha:
Unclear? Try another one.