SDK编程中如何得到单选框的状态值?也就是怎么知道哪个被选中?
回复人: soandor(北极熊) ( ) 信誉:100 2002-05-20 15:52:00 得分:0
SendMessage(
(HWND) hWnd, // handle to destination window
BM_GETCHECK, // message to send
(WPARAM) wParam, // not used; must be zero
(LPARAM) lParam // not used; must be zero
);
Top
回复人: pcman1990(pcman) ( ) 信誉:110 2002-05-20 15:53:00 得分:0
int nCheck = SendMessage(GetDlgItem(hWnd, IDC_YOURRADIOBUTTON), BM_GETCHECK, 0, 0);
根据返回值nCheck可以判断一个单选框是否被选中。上例中,IDC_YOURRADIOBUTTON是要检查的单选框ID,hWnd是该单选框所在窗口的HWND。
回复人: xcxlw() ( ) 信誉:100 2002-05-20 16:07:00 得分:0
radiopointer->GetCheck()==BST_CHECKED
########################
都不行呀~~~~~~~~~~~~~到底怎么才能知道哪个单选框被用户选中了呢?????
问题点数:50、回复次数:5Top
1 楼shadowac(走向黑暗)回复于 2002-05-20 17:46:45 得分 10
SendMessage(hWnd, WM_COMMAND, MAKEWPARAM(IDC_CHECK, BM_GETCHECK), 0);
or
SendDlgMessage(hDlg, IDC_CHECK, BM_GETCHECK, 0, 0);
它们的返回值:
BST_CHECKED 选中
BST_UNCHECKED 未选中
Top
2 楼ILP(眼睛近视了好久好久)回复于 2002-05-20 17:48:15 得分 0
用SendMessage()发送 BM_GETCHECK 消息!
他将返回选择状态!
至于按的是那个完全是在窗口处理过程中处理的!
就是消处理菜单一样!
系统会自动发给你是那个按的!
因为单选按钮只是按钮类的某种风格!
好像按照按钮处理就行吧!Top
3 楼shadowac(走向黑暗)回复于 2002-05-20 17:50:09 得分 0
SendMessage(hWnd, WM_COMMAND, MAKEWPARAM(IDC_CHECK, BM_GETCHECK), 0);
or
SendDlgMessage(hDlg, IDC_CHECK, BM_GETCHECK, 0, 0);
它们的返回值:
BST_CHECKED 选中
BST_UNCHECKED 未选中
Top
4 楼ylb_and_xy(黑狐狸)回复于 2002-05-20 17:51:57 得分 40
IsDlgButtonChecked()最简单。
Top
5 楼ylb_and_xy(黑狐狸)回复于 2002-05-20 17:54:27 得分 0
IsDlgButtonChecked()最简单。
Top
6 楼depotmen(嘻嘻哈哈)回复于 2002-05-20 17:55:53 得分 0
SendMessage(hWnd, WM_COMMAND, MAKEWPARAM(IDC_CHECK, BM_GETCHECK), 0);
返回的是个-858993460
:(Top
7 楼shadowac(走向黑暗)回复于 2002-05-20 18:06:45 得分 0
hWnd 为单选按钮的父窗口。
Top




