k())
strMess += "上网聊天\n";
pBtn = (CButton * )GetDlgItem(IDC_CHECK3);
if(NULL != pBtn &;&; pBtn->GetCheck())
strMess += "
电脑游戏\n";
AfxMessageBox(strMess);
}
(6)为了美观,可以加一个群组控件,并把
对话框的标题改成“个人信息”,按Ctrl + F5组合键创建并运行Ex040105b.exe,效果如图4-9所示。
图4-9个人信息对话框
6.
列表框
下面以一个具体的例子
演示如何使用列表框。
(1)利用应用程序向导新建一个基于对话框的程序Ex040105c。
(2)增加一个ListBox,利用类向导为它关联一个控制型的成员变量,关联的类是ClistBox,变量名是m_nameListBox。
(3)在CEx040105cDlg::OnInitDialog()函数中初始化ListBox。
BOOL CEx040105cDlg::OnInitDialog()
{
//…
int nItem = m_nameListBox.AddString("张三");
m_nameListBox.SetItemData(nItem,3);
nItem = m_nameListBox.AddString("李四");
m_nameListBox.SetItemData(nItem,5);
nItem = m_nameListBox.AddString("王五");
m_nameListBox.SetItemData(nItem,7);
return TRUE; // return TRUE unless you set the focus to a control
}
(4)按下Ctrl+F5组合键创建并运行Ex040105c.exe,可以看到列表框中已经有了3项数据。
(5)为ListBox增加LBN_SELCHANGE消息的响应函数,具体代码如下:
void CEx040105cDlg::OnSelchangeList1()
{
int nSel = m_nameListBox.GetCurSel();
if(-1 != nSel)
{
CString strName ;
m_nameListBox.GetText(nSel,strName);
UINT uID = m_nameListBox.GetItemData(nSel);
CString strMess ;
strMess.Format("你选中了%s,他是的ID是%u",strName,uID);
AfxMessageBox(strMess);
}
}
7.组合框
下面以一个具体的例子演示组合框的用法。
(1)利用应用程序向导新建一个基于对话框的程序Ex040105d。
(2)增加一个组合框,并在它的Data属性中增加数据,可以按Ctrl + Enter键使数据分行排列,如图4-10所示。
图4-10组合框的Data属性
(3)按下Ctrl + F5组合键创建并运行Ex040105d.exe,查看效果。用户可以输入新的爱好,也可以单击组合框展开列表,从中择合适的爱好。
(4)为确定按钮增加响应函数,代码如下:
void CEx040105dDlg::OnOK()