实验一 树控件
更新时间:2024-03-05 18:04:01 阅读量: 综合文库 文档下载
- 实验一小推荐度:
- 相关推荐
实验一树控件
实验目的:
1. 了解树控件的基本原理
2. 编制简单树控件程序并运行,熟悉树控件的常用操作 3. 了解树控件的程序结构
4. 了解树控件父节点与子节点的关系
实验内容:
1. 本实验采用Visual C++6.0程序搭建树控件实例. 2. 添加并设计对话框 3. 完善CTreeDlg代码 4. 调用对话框
实验步骤:
1、添加并设计对话框
(1) 用MFC AppWizard(exe)创建一个默认的单文档应用程序Ex_Ctrl7SDI。
(2) 向应用程序中添加一个对话框资源IDD_TREE,标题定为“树控件示例”,字体设为“宋体,9号”,创建此对话框类为CTreeDlg。
(3) 删除[Cancel]按钮,将[OK]的标题改为“退出”。打开对话框网格,参看图的控件布局,为对话框添加一个树控件,取其默认的ID号IDC_TREE1。打开该控件的属性对话框,按图进行设置。
2、完善CTreeDlg代码
(1)打开ClassWizard的Member Variables页面,看看Class name是否是CTreeDlg,选中IDC_TREE1,双击鼠标或单击Add Variables按钮,为其添加一个控件变量m_TreeCtrl,类型为CTreeCtrl。
(2)为CTreeDlg类添加一个图像列表类CImageList对象m_ImageList。
(3) 用MFC ClassWizard为CTreeDlg类添加WM_INITDIALOG消息映射,并添加下列初始化代码:(4) 用MFC ClassWizard为树控件IDC_TREE1添加NM_RCLICK(右击)的消息映射,并增加下列代码:
void CTreeDlg::OnRclickTree1(NMHDR* pNMHDR, LRESULT* pResult) {
CPoint point; UINT uFlags;
::GetCursorPos( &point ); // 获取当前鼠标所在的屏幕坐标 m_TreeCtrl.ScreenToClient( &point ); // 将屏幕坐标转换成树控件中的客户坐标
HTREEITEM hSel = m_TreeCtrl.HitTest(point, &uFlags); // 测试鼠标点是否在一个节点项上,若是,选中该节点 if ((hSel != NULL) && (TVHT_ONITEM &uFlags)) { } }
3. 调用对话框
(1) 打开Ex_Ctrl7SDI单文档应用程序的菜单资源,添加顶层菜单项“测试(&T)”,在其下添加一个菜单项“树控件(&T)”,ID为ID_TEST_TREE。
(2) 用MFC ClassWizard为CMainFrame类添加菜单项ID_TEST_TREE的COMMAND消息映射,
*pResult = 0;
m_TreeCtrl.SelectItem(hSel);
CStringstrItem = m_TreeCtrl.GetItemText( hSel ); MessageBox( strItem );
取默认的映射函数名,并添加下列代码: void CMainFrame::OnTestTree() {
CTreeDlgdlg; dlg.DoModal(); }
(3) 在文件MainFrm.cpp的前面添加CTreeDlg类的头文件包含: #include \ #include \(4) 编译运行并测试。
实验问题://不要自问自答,要写在实验中遇到的问题以及如何解决的
1. 树控件的组成?
树控件是由父节点和子节点组成的
2. 什么是子节点,什么是父节点,什么是根节点?
位于某一节点之下的节点成为子节点,位于子节点之上的节点称为该节点的父节点,位于输的顶层或根部的节点称为根节点 3. NM_TREEVIEW的结构定义
TypedefstructtagNMTREEVIEW{ NMHDR hdr; UINT action; TVITEM itemOld; TVITEM itemNew; POINT ptDrag; }
实验体会:
通过此次关于数控件的实验,使我对数控件有了更深的认识: 1、知道如何添加如何设计对话框。
2、如何用用MFC ClassWizard为CTreeDlg类添加WM_INITDIALOG消息映射。
3、用MFC ClassWizard为树控件IDC_TREE1添加NM_RCLICK(右击)的消息映射,并增加下列代码是怎么编写的。
4、对数控件对产生更加浓郁的兴趣。
正在阅读:
实验一 树控件03-05
实务案例研究国际法案例分析05-25
实验六、小鼠巨噬细胞吞噬的观察07-24
暑假工餐饮社会实践报告(通用5篇)04-08
合资建设年产10000台康明斯6CT缸体30000台缸盖项目可行性研究报告09-18
财务副科长工作总结01-05
在线考试系统设计方案06-01
增值税、企业所得税评估指标和财务报表分析10-24
药物化学重点笔记(打印版)05-24
浅谈我国公务员考核制度中的廉政考核03-27
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 控件
- 实验
- 2019小学一年级语文老师兼班主任工作总结
- 数据结构试题及答案
- 申请材料石狮市产业引导基金子基金管理机构征集遴选公告 - 图文
- 20161130计算机应用基础(二)第四次作业
- 尔雅当代中国经济题库2015
- 2011.12.2卫生部关于修订住院病案首页的通知
- 宁波市人民政府关于加快推进财政改革促进经济社会发展的实施意见
- 围棋段位介绍和段位塞要求
- 浅析李煜后期词作的内容和风格
- K公司一线员工培训现状分析及对策研究
- 企业内部控制规范与评价问题的探讨本科毕设论文
- 七上思品月考题1-4课
- 郭建辉律师会见笔录模板
- 用“进一法”和“去尾法”获奖解决问题法教学设计-一师一优课
- 复式统计表练习3
- 电势—pH曲线的测定
- 尔雅网络 - 形象管理课程参考答案
- 四川海螺沟汽车纯玩三日游线路设计(纯玩) 贡嘎山海螺沟线路 -
- 最新人教版小学五年级数学下册教学计划
- 数学建模期末试卷答案