其他分享
首页 > 其他分享> > 複選框控件的用法

複選框控件的用法

作者:互联网

---------------------------------------------------2016.09.13------------------------------------------------------------------
-----------------------------------------------複選框控件的用法--------------------------------------------------
有三種方法對複選框控件進行操作:
第一種:利用Cbutton成員函數GetCheck和SetCheck
第二種:利用CWnd成員函數IsDlgButtonChecked
第三種:把複選框控件與BOOL型變量相關聯
-----------------------------------------------------------------------------------------
方法一:
-----------
用GetDlgItem獲取複選框的指針,再用GetCheck和SetCheck來獲取和設置狀態。
獲取複選框狀態:
CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK_MIXI);
 int state = pBtn->GetCheck();
當state ==0時,表示該複選框未被選中;
當state ==1時,表示該複選框被選中。
當state ==2時,表示不確定
設置複選框狀態:
CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK_MIXI);
pBtn->SetCheck(1);
SetCheck(0)表示設置複選框為未選中狀態;
SetCheck(1)表示設置複選框為選中狀態;
SetCheck(1)表示設置複選框為不確定狀態。
方法二:
---------
IsDlgButtonChecked可設置和獲取複選框控件check box的狀態和單選框控件Radio button的狀態。
函數定義:
UNIT IsDlgButtonChecked(int nIDButton) const;
可確定該按鈕控制是否有選中標誌,或三態按鈕控制是否為灰色的、選中的、或其他。
BST_CHECKED:表示按鈕被選中
 BST_INDETERMINATE:表示按鈕是灰色的,即為不確定狀態。
 BST_UNCHECKED:表示按鈕未被選中。
if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 ) )
 {
//
 }
方法三:
----------
複選框控件添加一個控件類型的BOOL值變量
void calcuArea::DoDataExchange (CDataExchange *pDX)
 {
 
 CAcUiDialog::DoDataExchange (pDX) ;
 DDX_Check(pDX, IDC_CHECK1, m_delete);
 }

------------------------------------------------------------------------------------------------------------
子對話框調用父對話框
 CParentDlg *pParent;
 pParent=(CParentDlg *)GetParent();
-------------------------------------------------

CWnd * pCWnd ;//獲得窗口對象指針;
    pCWnd=FromHandle(Handle);
    HWND Handle;
    Handle=GetSafeHwnd(pCWnd);

------------------------------------------------
可以通過GetParent函數獲取對話框父窗口指針,但該函數返回的是CWnd類型的指針,可以進行強制轉換。
--------------------------------------------------------------------------------------------
--------------------------------------2016.09.17------------------------------------------------------
啟用和禁用控件可調用CWnd::EnableWindow 函數。
 
BOOL EnableWindow(BOOL bEnable = TRUE);
 
判斷控件是否可用可以調用 CWnd::IsWindowEnable函數
 
BOOL IsWindowEnable();
 
 
 
禁用控件
 
CWnd *pWnd = GetDlgItem(IDC_EDIT1);
pWnd->EnableWindow(FALSE);

 
啟用控件
 
CWnd *pWnd = GetDlgItem(IDC_EDIT1);
 
pWnd->EnableWindow(TRUE);
---------------------------------------------------------------------------------------------------------------


 

标签:控件,選中,狀態,選框,函數,用法,CWnd
来源: https://blog.csdn.net/u014626607/article/details/98883068