最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Win32 程序?qū)W習(xí)筆記_創(chuàng)建按鈕(Button)

2022-07-15 01:23 作者:bili_98931215023  | 我要投稿

按鈕類(Button)分為四種樣式

1。組框樣式(GroupBox)

2。單選按鈕樣式(RadioBox)

3。復(fù)選框樣式(CheckBox)

4。普通按鈕樣式(Pushbutton)

創(chuàng)建代碼:

// 創(chuàng)建組框

???????? HWND hGroupWnd = CreateWindowEx(0, TEXT("BUTTON"), TEXT("組框1"), WS_VISIBLE | WS_CHILD | BS_GROUPBOX,

?????????????????? 10, 10, 300, 200, hWnd, (HMENU)1001, hInstance, 0);

?

???????? // 創(chuàng)建下壓按鈕

???????? HWND hBtnWnd1 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("Button1"), WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON,

?????????????????? 40, 30, 100, 30, hWnd, (HMENU)1002, hInstance, 0);

???????? HWND hBtnWnd2 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("Button2"), WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON,

?????????????????? 150, 30, 100, 30, hWnd, (HMENU)1003, hInstance, 0);

?

???????? // 創(chuàng)建一組單選按鈕(WS_GROUP設(shè)置分組,放在一組的第一個單選按鈕上)

???????? HWND hRadioWnd1 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("RadioBox1"), WS_VISIBLE | WS_CHILD |WS_GROUP| BS_AUTORADIOBUTTON,

?????????????????? 40, 70, 100, 30, hWnd, (HMENU)1004, hInstance, 0);

???????? HWND hRadioWnd2 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("RadioBox2"), WS_VISIBLE | WS_CHILD | BS_AUTORADIOBUTTON,

?????????????????? 150, 70, 100, 30, hWnd, (HMENU)1005, hInstance, 0);

?

???????? // 創(chuàng)建另一組單選按鈕

???????? HWND hRadioWnd3 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("RadioBox1"), WS_VISIBLE | WS_CHILD | WS_GROUP | BS_AUTORADIOBUTTON,

?????????????????? 40, 110, 100, 30, hWnd, (HMENU)1005, hInstance, 0);

???????? HWND hRadioWnd4 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("RadioBox2"), WS_VISIBLE | WS_CHILD | BS_AUTORADIOBUTTON,

?????????????????? 150, 110, 100, 30, hWnd, (HMENU)1006, hInstance, 0);

?

???????? // 創(chuàng)建復(fù)選框按鈕

???????? HWND hCheckWnd1 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("CheckBox1"), WS_VISIBLE | WS_CHILD | BS_AUTOCHECKBOX,

?????????????????? 40, 150, 100, 30, hWnd, (HMENU)1007, hInstance, 0);

???????? HWND hwndCheck2 = CreateWindowEx(0, TEXT("BUTTON"), TEXT("CheckBox2"), WS_VISIBLE | WS_CHILD | BS_AUTOCHECKBOX,

?????????????????? 150, 150, 100, 30, hWnd, (HMENU)1008, hInstance, 0);

效果圖片:

按鈕風(fēng)格樣式


BS_3STATE

創(chuàng)建與復(fù)選框相同的按鈕,但該框可以是灰色的,也可以選中或清除。 ? 使用灰色狀態(tài)顯示未確定復(fù)選框的狀態(tài)。

BS_AUTO3STATE

創(chuàng)建與三狀態(tài)復(fù)選框相同的按鈕,但當用戶選擇該按鈕時,該框會更改其狀態(tài)。 ? 狀態(tài)通過檢查、不確定和清除循環(huán)。

BS_AUTOCHECKBOX

創(chuàng)建與復(fù)選框相同的按鈕,但每次用戶選中復(fù)選框時,復(fù)選框狀態(tài)都會自動切換并清除。

BS_AUTORADIOBUTTON

創(chuàng)建與單選按鈕相同的按鈕,但當用戶選擇該按鈕時,系統(tǒng)會自動將按鈕的檢查狀態(tài)設(shè)置為已選中,并自動設(shè)置同一組中所有其他按鈕的檢查狀態(tài)以清除。

BS_BITMAP

指定按鈕顯示位圖。 ? 請參閱“備注”部分,了解其與BS_ICON的交互。

BS_BOTTOM

將文本置于按鈕矩形底部。

BS_CENTER

在按鈕矩形中水平居中文本。

BS_CHECKBOX

創(chuàng)建包含文本的小型空復(fù)選框。 ? 默認情況下,該文本顯示在復(fù)選框右側(cè)。 ? 若要顯示復(fù)選框左側(cè)的文本,請將此標志與BS_LEFTTEXT樣式 (或等效的BS_RIGHTBUTTON樣式) 組合在一起。

BS_COMMANDLINK

創(chuàng)建一個命令鏈接按鈕,該按鈕的行為類似于BS_PUSHBUTTON樣式按鈕,但命令鏈接按鈕的左側(cè)有一個綠色箭頭,指向按鈕文本。 可以通過將BCM_SETNOTE消息發(fā)送到按鈕來設(shè)置按鈕文本的標題。

BS_DEFCOMMANDLINK

創(chuàng)建類似于BS_PUSHBUTTON樣式按鈕的命令鏈接按鈕。 如果按鈕位于對話框中,用戶可以通過按 ? Enter 鍵來選擇命令鏈接按鈕,即使命令鏈接按鈕沒有輸入焦點也是如此。 ? 此樣式可用于讓用戶快速選擇最有可能 (默認) 選項。

BS_DEFPUSHBUTTON

創(chuàng)建一個類似于BS_PUSHBUTTON樣式按鈕的推送按鈕,但外觀明顯。 如果按鈕位于對話框中,則用戶可以通過按 Enter 鍵來選擇該按鈕,即使該按鈕沒有輸入焦點也是如此。 此樣式可用于讓用戶快速選擇最有可能 (默認) 選項。

BS_DEFSPLITBUTTON

創(chuàng)建一個類似于BS_PUSHBUTTON樣式按鈕的拆分按鈕,但也具有獨特的外觀。 如果拆分按鈕位于對話框中,則用戶可以按 Enter 鍵選擇拆分按鈕,即使拆分按鈕沒有輸入焦點也是如此。 此樣式可用于讓用戶快速選擇最有可能 (默認) 選項。

BS_GROUPBOX

創(chuàng)建一個矩形,在該矩形中可以分組其他控件。 ? 與此樣式關(guān)聯(lián)的任何文本都顯示在矩形的左上角。

BS_ICON

指定按鈕顯示圖標。 ? 請參閱“備注”部分,了解其與BS_BITMAP的交互。

BS_FLAT

指定按鈕為二維;它不使用默認底紋來創(chuàng)建三維圖像。

BS_LEFT

左對齊按鈕矩形中的文本。 ? 但是,如果按鈕是沒有BS_RIGHTBUTTON樣式的復(fù)選框或單選按鈕,則文本框或單選按鈕右側(cè)的文本左對齊。

BS_LEFTTEXT

與單選按鈕或復(fù)選框樣式結(jié)合使用時,將文本放在單選按鈕或復(fù)選框的左側(cè)。 ? 與BS_RIGHTBUTTON樣式相同。

BS_MULTILINE

如果文本字符串太長,無法容納按鈕矩形中的單個行,則將按鈕文本包裝為多行。

BS_NOTIFY

允許按鈕將?BN_KILLFOCUS?和?BN_SETFOCUS?通知代碼發(fā)送到其父窗口。
? 請注意,無論按鈕是否具有此樣式,按鈕都會發(fā)送?BN_CLICKED?通知代碼。 若要獲取?BN_DBLCLK?通知代碼,按鈕必須具有BS_RADIOBUTTON或BS_OWNERDRAW樣式。

BS_OWNERDRAW

創(chuàng)建所有者繪制的按鈕。 ? 當按鈕的視覺方面發(fā)生更改時,所有者窗口會收到?WM_DRAWITEM?消息。 請勿將BS_OWNERDRAW樣式與其他任何按鈕樣式組合在一起。

BS_PUSHBUTTON

創(chuàng)建一個推送按鈕,當用戶選擇該按鈕時,會將?WM_COMMAND?消息發(fā)布到所有者窗口。

BS_PUSHLIKE

使按鈕 ((如復(fù)選框、三態(tài)復(fù)選框或單選按鈕)) 外觀并像按下按鈕一樣。 ? 按鈕在未推送或檢查時顯示,在按下或選中按鈕時會引發(fā)。

BS_RADIOBUTTON

使用文本創(chuàng)建一個小圓圈。 ? 默認情況下,文本顯示在圓的右側(cè)。 ? 若要顯示圓左側(cè)的文本,請將此標志與BS_LEFTTEXT樣式 (或等效的BS_RIGHTBUTTON樣式) 組合在一起。 ? 對相關(guān)組使用單選按鈕,但相互排斥的選擇。

BS_RIGHT

右對齊按鈕矩形中的文本。 ? 但是,如果按鈕是沒有BS_RIGHTBUTTON樣式的復(fù)選框或單選按鈕,則文本框或單選按鈕右側(cè)的文本右對齊。

BS_RIGHTBUTTON

將單選按鈕的圓或復(fù)選框的正方形放在按鈕矩形的右側(cè)。 ? 與BS_LEFTTEXT樣式相同。

BS_SPLITBUTTON

創(chuàng)建拆分按鈕。 ? 拆分按鈕具有下拉箭頭。

BS_TEXT

指定按鈕顯示文本。

BS_TOP

將文本置于按鈕矩形的頂部。

BS_TYPEMASK

請勿使用此樣式。 ? 在 BS_* 樣式位上使用 OR 運算符產(chǎn)生的復(fù)合樣式位。 ? 它可用于從給定位掩碼屏蔽有效的BS_* 位。 請注意,這是過期的,并且未正確包含所有有效樣式。 因此,不應(yīng)使用此樣式。

BS_USERBUTTON

已過時,但提供與 16 位版本的Windows兼容。 應(yīng)用程序應(yīng)改用BS_OWNERDRAW。

BS_VCENTER

將文本置于按鈕矩形的中間 (垂直) 。


按鈕常用消息:

BM_CLICK? 模擬按鈕點擊? WPARAM=0,LPARAM=0;

BM_GETCHECK??????? 獲取單選按鈕或復(fù)選框的選中狀態(tài)???? WPARAM=0,LPARAM=0

BM_GETIMAGE?????? 獲得按鈕的圖像(圖標或位圖)句柄,???? WPARAM=0,LPARAM=0

BM_GETSTATE????????? 獲得單選按鈕或復(fù)選框狀態(tài),???? WPARAM=0,LPARAM=0;

BM_SETCHECK???????? 設(shè)置單選按鈕或復(fù)選框的選中狀態(tài),????????

???????????????????????????????????? WPARAM=BST_CHECKED,BST_INDETERMINATE,BST_UNCHECKED

???????????????????????????????????? LPARAM=0;

BM_SETDONTCLICK? 在單選按鈕上設(shè)置一個標志,接收焦點時生成BN_CLICKED消息

???????????????????????????????????? WPARAM=BOOL,???? LPARAM=0;

BM_SETIMAGE??????? 設(shè)置新圖像(圖標或位圖)????????

WPARAM=IMAGE_BITMAP,IMAGE_ICON

???????????????????????????????????? LPARAM=HBITMAP,HICON

BM_SETSTATE?????????? 設(shè)置按鈕的選中狀態(tài)? ???????? WPARAM=BOOL, LPARAM=0;

BM_SETSTYLE?????????? 設(shè)置按鈕樣式?????????????????? WPARAM=BS_..(按鈕樣式)? ,LPARAM=BOOL,(是否重繪)

按鈕通知消息

點擊按鈕時向父窗口發(fā)送WM_COMMAND消息,

wParam?? 的低字節(jié)指定了子窗口的ID號,高字節(jié)指定事件通知碼BN_CLICKED,

lParam???? 指定了子窗口句柄


Win32 程序?qū)W習(xí)筆記_創(chuàng)建按鈕(Button)的評論 (共 條)

分享到微博請遵守國家法律
韶山市| 嘉义县| 平罗县| 安溪县| 清河县| 六枝特区| 绿春县| 政和县| 漳浦县| 玛多县| 青川县| 博野县| 康定县| 凭祥市| 交城县| 额尔古纳市| 陆川县| 肥城市| 五台县| 昌黎县| 铁力市| 休宁县| 博乐市| 苍南县| 乐昌市| 开鲁县| 阳原县| 承德县| 高雄县| 兴文县| 沾益县| 西华县| 哈密市| 依兰县| 香港 | 辛集市| 武功县| 普兰店市| 新宁县| 甘孜| 灵石县|