Check Box的详细用法

来源:互联网 发布:达梦数据库客户端工具 编辑:程序博客网 时间:2024/06/05 09:51

勾选时...做某种算法---不勾选时 做另一种算法

if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 ) ){// 勾选}else{}
IDC_CHECK1是CheckBox控件。

函数功能:该函数可以确定某个按钮控制是否有选中标志,或者三态按钮控制是否为灰色的、选中的、或两者都不是。

  函数原型:UINT IsDlgButtonChecked(HWND hDlg,Int nlDBUtton);
  参数:
  hDlg:指向包含按钮控制的对话框。
  nkDButtom:指定按钮控制的整型标识符。
  返回值:使用BS_AUTOCHECKBOX、BS_AUTORADIOBUTTON、BS_AUTO3STATE、BS_CHECKBOX、BS_RADIOBUTION或BS_3STATE样式创建的按钮的返回值可以是如下值之一:
  BST_CHECKED:表示按钮被选中。
  BST_INDETERMINATE:表示按钮是灰色的,即为不确定状态(只有具有BS_3STATE或BS_AUTO3STATE样式的按钮才使用该值)。

  BST_UNCHECKED:表示该按钮未选中(unckecked)。如果该按钮用其他任何样式,那么返回值为零。

也可以为该控件添加一个控件类型的BOOL值变量如:BOOL m_delete;

void calcuArea::DoDataExchange (CDataExchange *pDX) {
 CAcUiDialog::DoDataExchange (pDX) ;
 DDX_Check(pDX, IDC_CHECK1, m_delete);
}

 

也可以对变量进行get或者set之类的操作来设置或者判断复选框的选择状态。

 

得到复选框状态的函数:CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK);

           int state = pBtnNONE->GetCheck();

           当state == 0时表示该复选框没有被选中;

           当state == 1时表示该复选框被选中设置复选框状态的函数:CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK);

           pBtnNONE->SetCheck(1);

           SetCheck(1)表示设置复选框为“选中”状态;

           SetCheck(0)表示设置复选框为“未选中”状态;


另一种用法:

Check Box 的使用方法与Radio Button 的用法相似,比它简单

1.设定Check Box为 选中状态 :(CButton*)GetDlgItem(ID号))->SetCheck(TRUE);(SetCheck(FALSE)) 为不选中,如果想初始化为选中状态,则在InitDlg函数中加入此函数.

            ( (CButton*)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);

2.检查Check Box是否为选中状态,可用GetCheck()函数,如:

if(BST_CHECKED==((CButton*)GetDlgItem(IDC_RADIO1))->GetCheck())             选中;

if(BST_UNCHECKED==((CButton*)GetDlgItem(IDC_RADIO3))->GetCheck())           未选中;


0 0
原创粉丝点击