重要控件的使用
来源:互联网 发布:淘宝网如何提高排名 编辑:程序博客网 时间:2024/05/22 00:44
1.对所用到的控件进行初始化,如果代码少可以直接在OnInitDialog函数中编写,否则另外定义函数InitUserCtrl。
CComboBox的初始值:
CComboBox m_cbbList;
m_cbbList.AddString(_T("大图标"));
m_cbbList.AddString(_T("小图标"));等。
CSliderCtrl:设置微调范围:
是一个“滑动块控件”,是一个包含一个滑动块和可选的刻度线的窗口,当用户用鼠标或方向键移动滑动块时,该控件发送通知消息来表明这些改变。
CSliderCtrl m_sldTest;
m_sldTest.SetRange(1, 50);
CProgressCtrl:设置范围,初始位置,步长
m_pgsTest.SetRange(0, 256);
m_pgsTest.SetPos(0);
m_pgsTest.SetStep(10);
2.对树形控件 CTreeCtr进行消息响应,包括对树的初始化等。
树形控件可以用于树形的结构,其中有一个根节点(root),下面有很多子节点,每个子节点上允许有一个或多个或没有子节点。在树形控件中每一个结点都有一个句柄(HTREEITEM ),同时添加结点时必须提供的参数是该结点的父节点句柄,根root只有一个,既不可以添加也不可以删除,
HTREEITEM root = m_tcTest.InsertItem(_T("计算机"), 1, 0);
HTREEITEM subroot1 = m_tcTest.InsertItem(_T("台式机"), 1, 0, root);
HTREEITEM subroot2 = m_tcTest.InsertItem(_T("笔记本"), 1, 0, root);
HTREEITEM subroot3 = m_tcTest.InsertItem(_T("服务器"), 1, 0, root);
HTREEITEM subroot4 = m_tcTest.InsertItem(_T("上网本"), 1, 0, root);
m_tcTest.InsertItem(_T("联想"), 1, 0, subroot1);
m_tcTest.InsertItem(_T("DELL"), 1, 0, subroot1);
m_tcTest.InsertItem(_T("HP"), 1, 0, subroot2);
m_tcTest.InsertItem(_T("苹果"), 1, 0, subroot2);
m_tcTest.SelectItem(root); //选择给定的TREE项
m_tcTest.Expand(root, TVE_EXPAND);//展开或收缩指定tree view项的子项
3.列表控件CListCtrl设置
m_lstTest.InsertColumn(0, _T("编号"), LVCFMT_LEFT, 80);//插入列表视图控件中的新列
m_lstTest.InsertColumn(1, _T("姓名"), LVCFMT_LEFT, 80);
m_lstTest.InsertColumn(2, _T("性别"), LVCFMT_LEFT, 80);
m_lstTest.InsertColumn(3, _T("年龄"), LVCFMT_LEFT, 80);
m_lstTest.InsertItem(0, _T("9527")); //在列表视图控件中插入一个新项
m_lstTest.SetItemText(0, 1, _T("李圣杰"));//设置列表视图项或子项的文本
m_lstTest.SetItemText(0, 2, _T("女"));
m_lstTest.SetItemText(0, 3, _T("23"));
m_lstTest.InsertItem(1, _T("9528"));
m_lstTest.SetItemText(1, 1, _T("吕南公"));
m_lstTest.SetItemText(1, 2, _T("男"));
m_lstTest.SetItemText(1, 3, _T("13"));
m_cbbList.SetCurSel(0); //选择组合框的第一种显示方式
OnSelendokComboList() ;//根据组合框的选择显示相应的样式
4.组合框的选择响应
先获得ListCtrl当前样式,根据组合框选项,设置所选样式显示内容
DWORD dwStyle = m_lstTest.GetStyle();
dwStyle &= ~LVS_ICON;
dwStyle &= ~LVS_SMALLICON;
dwStyle &= ~LVS_LIST;
dwStyle &= ~LVS_REPORT;
int index = m_cbbList.GetCurSel();
switch(index)
{
case 0:
dwStyle |= LVS_ICON;
break;
case 1:
dwStyle |= LVS_SMALLICON;
break;
case 2:
dwStyle |= LVS_LIST;
break;
case 3:
dwStyle |= LVS_REPORT;
break;
}
::SetWindowLong(m_lstTest.m_hWnd, GWL_STYLE, dwStyle);
5.进度条的响应按钮,开始和结束
start:点击start时,进度条要根据所设置的步长以及范围行进。用定时器来做
在此函数中启动定时器 int m_uTimer = SetTimer(1, 30, NULL);
在OnTimer函数中,让进度条根据步长移动 m_pgTest.StepIt();
stop:结束定时器 KillTimer(m_uTimer);
6.CSlider滑动块
功能:在滑动块上移动时,会有一个位置值,将次位置值映射到旁边的CEdit中。
CSlider本身没有响应移动的函数,可以对话框窗口的WM_HSCROLL消息,在此消息中操作
定义一个CString类型的值变量m_sliderTest和要映射的CEdit关联
int n = m_slider.GetPos();
m_sliderTest.Format("%d",n);
UpdateData(false);
7.CSpin旋转按钮操作
旋转按钮首先要设置和左边的CEdit作为伙伴按钮,其次响应消息
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN, OnDeltaposSpin)在此消息中,让按钮对CEdit中的数字进行操作,定义一个int变量m_iSpin ,在构造函数中初始化m_iSpin = 0;m_edSpin是CEdit
CString str;
if(pNMUpDown->iDelta == -1)
{
m_iSpin++;
}
else
{
m_iSpin--;
}
str.Format(_T("%d"), m_iSpin);
m_edSpin.SetWindowText(str);
8.CDateTimeCtrl控件
CDateTimeCtrl m_dateTimer;
CTime tm;
m_dateTimer.GetTime(tm);
CString strTime;
strTime = tm.Format(_T("%H:%M:%S %Y/%m/%d"));
m_edInfo.SetWindowText(strTime);
CComboBox的初始值:
CComboBox m_cbbList;
m_cbbList.AddString(_T("大图标"));
m_cbbList.AddString(_T("小图标"));等。
CSliderCtrl:设置微调范围:
是一个“滑动块控件”,是一个包含一个滑动块和可选的刻度线的窗口,当用户用鼠标或方向键移动滑动块时,该控件发送通知消息来表明这些改变。
CSliderCtrl m_sldTest;
m_sldTest.SetRange(1, 50);
CProgressCtrl:设置范围,初始位置,步长
m_pgsTest.SetRange(0, 256);
m_pgsTest.SetPos(0);
m_pgsTest.SetStep(10);
2.对树形控件 CTreeCtr进行消息响应,包括对树的初始化等。
树形控件可以用于树形的结构,其中有一个根节点(root),下面有很多子节点,每个子节点上允许有一个或多个或没有子节点。在树形控件中每一个结点都有一个句柄(HTREEITEM ),同时添加结点时必须提供的参数是该结点的父节点句柄,根root只有一个,既不可以添加也不可以删除,
HTREEITEM root = m_tcTest.InsertItem(_T("计算机"), 1, 0);
HTREEITEM subroot1 = m_tcTest.InsertItem(_T("台式机"), 1, 0, root);
HTREEITEM subroot2 = m_tcTest.InsertItem(_T("笔记本"), 1, 0, root);
HTREEITEM subroot3 = m_tcTest.InsertItem(_T("服务器"), 1, 0, root);
HTREEITEM subroot4 = m_tcTest.InsertItem(_T("上网本"), 1, 0, root);
m_tcTest.InsertItem(_T("联想"), 1, 0, subroot1);
m_tcTest.InsertItem(_T("DELL"), 1, 0, subroot1);
m_tcTest.InsertItem(_T("HP"), 1, 0, subroot2);
m_tcTest.InsertItem(_T("苹果"), 1, 0, subroot2);
m_tcTest.SelectItem(root); //选择给定的TREE项
m_tcTest.Expand(root, TVE_EXPAND);//展开或收缩指定tree view项的子项
3.列表控件CListCtrl设置
m_lstTest.InsertColumn(0, _T("编号"), LVCFMT_LEFT, 80);//插入列表视图控件中的新列
m_lstTest.InsertColumn(1, _T("姓名"), LVCFMT_LEFT, 80);
m_lstTest.InsertColumn(2, _T("性别"), LVCFMT_LEFT, 80);
m_lstTest.InsertColumn(3, _T("年龄"), LVCFMT_LEFT, 80);
m_lstTest.InsertItem(0, _T("9527")); //在列表视图控件中插入一个新项
m_lstTest.SetItemText(0, 1, _T("李圣杰"));//设置列表视图项或子项的文本
m_lstTest.SetItemText(0, 2, _T("女"));
m_lstTest.SetItemText(0, 3, _T("23"));
m_lstTest.InsertItem(1, _T("9528"));
m_lstTest.SetItemText(1, 1, _T("吕南公"));
m_lstTest.SetItemText(1, 2, _T("男"));
m_lstTest.SetItemText(1, 3, _T("13"));
m_cbbList.SetCurSel(0); //选择组合框的第一种显示方式
OnSelendokComboList() ;//根据组合框的选择显示相应的样式
4.组合框的选择响应
先获得ListCtrl当前样式,根据组合框选项,设置所选样式显示内容
DWORD dwStyle = m_lstTest.GetStyle();
dwStyle &= ~LVS_ICON;
dwStyle &= ~LVS_SMALLICON;
dwStyle &= ~LVS_LIST;
dwStyle &= ~LVS_REPORT;
int index = m_cbbList.GetCurSel();
switch(index)
{
case 0:
dwStyle |= LVS_ICON;
break;
case 1:
dwStyle |= LVS_SMALLICON;
break;
case 2:
dwStyle |= LVS_LIST;
break;
case 3:
dwStyle |= LVS_REPORT;
break;
}
::SetWindowLong(m_lstTest.m_hWnd, GWL_STYLE, dwStyle);
5.进度条的响应按钮,开始和结束
start:点击start时,进度条要根据所设置的步长以及范围行进。用定时器来做
在此函数中启动定时器 int m_uTimer = SetTimer(1, 30, NULL);
在OnTimer函数中,让进度条根据步长移动 m_pgTest.StepIt();
stop:结束定时器 KillTimer(m_uTimer);
6.CSlider滑动块
功能:在滑动块上移动时,会有一个位置值,将次位置值映射到旁边的CEdit中。
CSlider本身没有响应移动的函数,可以对话框窗口的WM_HSCROLL消息,在此消息中操作
定义一个CString类型的值变量m_sliderTest和要映射的CEdit关联
int n = m_slider.GetPos();
m_sliderTest.Format("%d",n);
UpdateData(false);
7.CSpin旋转按钮操作
旋转按钮首先要设置和左边的CEdit作为伙伴按钮,其次响应消息
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN, OnDeltaposSpin)在此消息中,让按钮对CEdit中的数字进行操作,定义一个int变量m_iSpin ,在构造函数中初始化m_iSpin = 0;m_edSpin是CEdit
CString str;
if(pNMUpDown->iDelta == -1)
{
m_iSpin++;
}
else
{
m_iSpin--;
}
str.Format(_T("%d"), m_iSpin);
m_edSpin.SetWindowText(str);
8.CDateTimeCtrl控件
CDateTimeCtrl m_dateTimer;
CTime tm;
m_dateTimer.GetTime(tm);
CString strTime;
strTime = tm.Format(_T("%H:%M:%S %Y/%m/%d"));
m_edInfo.SetWindowText(strTime);
- 重要控件的使用
- android的 重要控件使用篇
- android的重要控件使用推荐好文
- 重要!PostgreSQL的使用
- 安卓控件使用系列8:Button按钮几个重要事件的使用
- 文本控件的一些重要的属性
- Android控件之——SlidingDrawer的使用及重要方法
- (转)Android控件之——SlidingDrawer的使用及重要方法
- flex 控件的重要屬性
- MVC的控件写法,及赋值 【重要】
- listview控件的一些重要属性整理
- Android Listview控件一些重要的属性
- MVC的控件写法,及赋值 【重要】
- Linux重要命令的使用
- iOS基本控件-UINavigationItem 导航控制器的重要属性,UINavigationBar的重要属性UINavigationItem
- Android的重要控件ListView的诸多问题处理方案
- ADOConnection 控件重要属性
- 重要控件-UITableView
- MFC程序中消息以及函数的处理顺序
- 自定义Visual Studio 2010 快捷键
- as3中的字符转码
- MFC框架流程
- CDN四大关键技术(转载自ChinaUnix)
- 重要控件的使用
- scala lift环境搭建(5)
- bmp转jpg、jpg转bmp、截屏保存jpg
- air环境下获取本机ip地址
- 单文档中拖动图片的方法
- MFC窗口绘制浅析
- 关于设备描述表
- 如何理解复杂的C/C++声明
- 尼姆博奕(Nimm Game)