因为课程需要,会用到MFC编程,所以讲一些经验总结下,以便日后使用查询。
// tab control控件的使用
// 建立一个Cluster窗口,通过tab可以切换成C-Means和Fuzzy C-Means窗口
1、插入对话框((ID:IDD_DIG_CLUSTER),删去默认生成的控件“OK”和“Cancel”后,插入一个tab control控件(ID:IDC_TAB)。通过类向导,给此对话框定义一个类CCluster,给tab控件定义变量m_tab。
2、插入另外两个对话框作为C-Means和Fuzzy C-Means的窗体,窗体属性中“Style”均设置为Child,“Border”设置为None,同样给这两个对话框分别定义类CCmeans和CFuzzyCMeans。
3、 在类CCluster中添加类CCmeans和CFuzzyCMeans的头文件,定义m_cmeans和m_fcmeans对象和标志枚举flg。
CCmeans m_cmeans;CFuzzyCMeas m_fcmeans;
enum{cmeans, fcmeans}flg; // 标志位,日后可供使用
4、重载类CCluster对应对话框的初始化函数OnInitDialog() ,添加如下代码即可
m_tab.InsertItem(, "C-Means"); // 插入第一个tab,显示C-Means
m_tab.InsertItem(, "Fuzzy C-Means");// 插入第二个tab,显示Fuzzy C-Means
m_cmeans.Create(IDD_DIG_CMEANS, GetDlgItem(IDC_TAB)); // 为m_cmeans和m_fcmeans产生对应的tab
m_fcmeans.Create(IDD_DIG_FUZZYC, GetDlgItem(IDC_TAB));
m_cmeans.ShowWindow(TRUE); // 显示m_cmeans页m_fcmeans.ShowWindow(FALSE); // 关闭m_fcmeans页
m_tab.SetCurSel(0); // 设置默认的tab
5、编译、运行即可
个人经验分享,欢迎转载,转载请注明出处:
By IYL:http://www.cnblogs.com/YLDream/p/5616682.html
如有失误,欢迎指正!
如果觉得不错,不妨“顶”一个或者“推荐”一番,这将是对我莫大的支持!
为了更好!
-YL