MFC学习 标签页与属性页及各常用控件使用
参考 http://blog.csdn.net/anye3000/article/details/6700023
CTabCtrl:
BOOL CTabTestDlg::OnInitDialog()
{
CDialog::OnInitDialog(); // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标 // TODO: 在此添加额外的初始化代码
m_TabCtrl.InsertItem(, "表一");
m_dlgTabl1.Create(IDD_DIALOG1, &m_TabCtrl);
//设立页面在控件中的范围
CRect rc;
m_TabCtrl.GetClientRect(rc);
rc.top += ;
rc.bottom -= ;
rc.left += ;
rc.right -= ;
m_dlgTabl1.MoveWindow(rc);
m_dlgTabl1.ShowWindow(SW_SHOW);
m_TabCtrl.InsertItem(, "表二");
m_dlgTabl2.Create(IDD_DIALOG2, &m_TabCtrl);
m_dlgTabl2.MoveWindow(rc);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
在点击标签时要增加事件
void CTabTestDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: 在此添加控件通知处理程序代码 switch(m_TabCtrl.GetCurSel())
{
case :
{
m_dlgTabl1.ShowWindow(SW_SHOW);
m_dlgTabl2.ShowWindow(SW_HIDE);
break;
}
case :
{
m_dlgTabl1.ShowWindow(SW_HIDE);
m_dlgTabl2.ShowWindow(SW_SHOW);
break;
}
default:
m_dlgTabl1.ShowWindow(SW_SHOW);
m_dlgTabl2.ShowWindow(SW_HIDE); }
*pResult = ;
}
CPropSheet:
在设置器中添加几个PropertypePage, 分别建立类, 增加OnSetActive(必要)事件处理, OnWinzarNext事件处理
BOOL PropPage2::OnSetActive()
{
CPropertySheet* pSheet = (CPropertySheet*)GetParent();
pSheet->SetWizardButtons(PSWIZB_BACK | PSWIZB_NEXT);
return CPropertyPage::OnSetActive();
} LRESULT PropPage2::OnWizardNext()
{
//Radio分组是以每个分组第一个radio设置属性group为true, 后面的radio不用设置, 都属于这个组,
//第二组的第一个radio也是设置group为true, 其它本组radrio不用设置group, 依次类推
if(m_Sel1.GetCheck() == && ((CButton*)GetDlgItem(IDC_RADIO2))->GetCheck() ==
&& ((CButton*)GetDlgItem(IDC_RADIO1))->GetCheck() == )
{
MessageBox("请选择数字1");
return -;
}
else if((((CButton*)GetDlgItem(IDC_RADIO4))->GetCheck() == )
&& ((CButton*)GetDlgItem(IDC_RADIO5))->GetCheck() == )
{
MessageBox("请选择数字2");
return -;
}
return CPropertyPage::OnWizardNext();
}
在类视图中右击添加一个类, 选择MFC类(不是普通类), 继承选择CPropertySheet, 添加几个PropertypePage派生类成员, PropSheet构造函数加入数据成员.
PropSheet::PropSheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
{
AddPage(&m_PropPage1);
AddPage(&m_PropPage2);
AddPage(&m_PropPage3);
AddPage(&m_PropPage4);
}
常用控件使用在附件中. 包括单选, 复选按钮, 下拉列表, 进度条,CSpinButton(点了数字加减, 或滚动条移的那种按钮), 滑动条.
另附:孙鑫MFC讲义代码下载
MFC学习 标签页与属性页及各常用控件使用的更多相关文章
- bootstrap学习之利用CSS属性pointer-events禁用表单控件
参考链接: CSS3 pointer-events:none应用举例及扩展 首先pointer-events在除去SVG中的应用只有两个值:AUTO | NONE pointer-events:non ...
- VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)
上一节中鸡啄米讲了标签控件知识的上半部分,本节继续讲下半部分. 标签控件的创建 MFC为标签控件的操作提供了CTabCtrl类. 与之前的控件类似,创建标签控件可以在对话框模板中直接拖入Tab Con ...
- VS2010/MFC编程入门之二十(常用控件:静态文本框)
上一节鸡啄米讲了颜色对话框之后,关于对话框的使用和各种通用对话框的介绍就到此为止了.从本节开始鸡啄米将讲解各种常用控件的用法.常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组 ...
- VS2010-MFC(常用控件:标签控件Tab Control 下)
转自:http://www.jizhuomi.com/software/207.html 上一节讲了标签控件知识的上半部分,本节继续讲下半部分. 标签控件的创建 MFC为标签控件的操作提供了CTabC ...
- MFC编程入门之二十(常用控件:静态文本框)
上一节讲了颜色对话框之后,关于对话框的使用和各种通用对话框的介绍就到此为止了.从本节开始将讲解各种常用控件的用法.常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组合框.图片控 ...
- winFrom 常用控件属性及方法介绍
目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichTextBox控件 5.NumericUpDown控件 6.Button(按钮)控件 7.Gro ...
- MFC之常用控件(四)
常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组合框.图片控件.列表控件.树形控件和进度条控件等等.本节教程先来讲解静态文本框的使用. 控件的通知消息 在将静态文本框的使用之 ...
- C# 常用控件属性及方法介绍
C#常用控件属性及方法介绍 目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox ...
- C#常用控件的属性以及方法(转载)
-----以前看别人的,保存了下来,但是忘了源处,望见谅. C#常用控件属性及方法介绍 目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichText ...
随机推荐
- SPOJ #2 Prime Generator
My first idea was Sieve of Eratosthenes, too. But obviously my coding was not optimal and it exceede ...
- SqlHelper文件复习
SqlHelper这是个cs类文件,将经常使用到的数据库操作写到一个文件下,方便调用,以及减少代码量.使用这个文件的前提是要建立一个app.config文件,并且引用configuration程序集: ...
- xubuntu手记
一. xfce下intelij快捷键冲突 window manager 快捷键 keyboard快捷键
- PLSQL_PLSQL中DML/DDL/DCL的概念和区分(概念)
2014-06-20 Created By BaoXinjian
- Nginx_修改Web服务器头信息(Header)里的Server值[转]
http://blog.rekfan.com/?p=122 黑客攻击一个网站,往往需要了解服务器的架构,网站的架构等信息,了解了这些信息,就知道网站薄弱的地方在哪里了! 为了不让对方知道自己的w ...
- 使ViewStub 来提高UI的加载的性能
首先看下API中的ViewStub 根据的文档的说明,ViewStub是一种默认不可见的试图,它没有大小,所以不能被改变,也不能通过某些把viewstub添加到布局当中来, 不过我们可以使用infla ...
- js跳转页面方法整理
1.window.location.href方式 window.location.href="http://www.zgw8.com"; 2.window.navigate方式跳转 ...
- android 基本知识
307966990 lyd@itcast.com 13716040037 李印东 东东 通信技术: 1G 模拟制式 语音通话. 2G GSM, CDMA 收发短信和邮件. 2.5G GPRS, EDG ...
- linux ps命令(转载)
来源:http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html Linux中的ps命令是Process Status的缩写.ps命令用来 ...
- NSSet类型 以及与NSArray区别
NSSet到底什么类型,其实它和NSArray功能性质一样,用于存储对象,属于集合: NSSet , NSMutableSet类声明编程接口对象,无序的集合,在内存中存储方式是不连续的,不像NSAr ...