(1,"Option 2");
Create a edit box as the m_tab’s Child
Create a static box as the m_tab’s Child
edit_box.ShowWindow(SW_SHOW); // edit box 在属xìng页的第一页
static_box.ShowWindow(SW_HIDE); // static box 在属xìng页的第二页
}
void CParentWnd::OnSelectChangeTab(NMHDR* pNMHDR, LRESULT* pResult)
{
//处理页选择改变后的消息
if(m_tab.GetCurSel()==0)
{//根据当前页显示/隐藏不同的子窗口
edit_box.ShowWindow(SW_SHOW);
static_box.ShowWindow(SW_HIDE);
}
else
枫叶文学网www.fywxw.com
第5 章 常用控件
·145·
{//
edit_box.ShowWindow(SW_HIDE);
static_box.ShowWindow(SW_SHOW);
}
}
技巧:获取对话框中控件的窗口指针并进行一些常用的cāo作
对于对话框中的控件,实际上是对话框的一个子窗口。在实际编程中,可能常常会对控件
进行一些cāo作,得到该控件窗口的指针是第一步,通过CWnd::GetDlgItem 可以很方便地得
到控件窗口的指针。假设某对话框上有一个ID 为IDC_XXX_STATIC 的静态文本控件,可
以通过下面这行代码重新设置文本内容:
GetDlgItem(IDC_XXX_STATIC)->SetWindowText(…)
对于其他cāo作窗口的常用cāo作,也可以通过GetDlgItem 传回的指针来调用对应的窗口cāo作
函数来完成。
5.11 本章小结
本章对MFC 编程中常常用到的控件进行了介绍,包括传统的Windows 控件和新型的
Win32 控件。在传统控件中主要介绍了静态文本控件、文本编辑控件、滚动条控件、按钮控
件(包括命令按钮、单选按钮、复选按钮)、列表框控件、组合框控件、图片控件等。在新型
控件中主要介绍了列表控件、树状控件、选项卡控件。本章对这些控件本身的特xìng、使用方
法以及主要的成员函数进行了介绍,掌握这些控件的使用方法是构建Windows 应用程序的前
提条件,因为在用户界面程序设计中是离不开控件的使用的。
关于控件的创建和使用总结起来的要点如下。
? 传统控件的通知消息一般是通过WM_COMMAND 消息发给父窗口的,Win32 控件的
通知消息则是通过WM_NOTIFY 消息发送的,该消息可以附带大量信息。
? 由于所有的控件都是子窗口,所有的控件类都是CWnd 类的派生类。因此可以用