网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
VC中Windows常用控件的创建和使用
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式
 树形控件是一种可以分级显示项目列表的窗口,其所含项目以相互关联的方式显示在控件中,通过点击位于某个层次的项目节点可以展开下一层次中从属于该节点的所有项目。树形控件非常适合于管理那些层次较多且相互间隶属关系较为清晰的项目元素。在MFC中,由CTreeCtrl类提供了对树形控件的功能支持。

  在用Create()创建了一个树形控件后可以用SetImageList()函数为其设置一个图象列表,这样就可以在树形控件中为各个层次的项目设置图标。通过InsertItem()函数可以为其添加数据项,返回的HTREEITEM类型的句柄唯一标识了此添加的项目。该句柄应当妥善保管,只有通过该句柄才能为此项目继续添加子项目。如果在创建子窗口时指定父窗口句柄为NULL,则将直接在根目录创建项目。下面这段代码将通过上述函数创建一个树形控件并向其添加二个层次的项目:

// 创建一个树形控件
m_ctrTreeCtrl.Create(WS_VISIBLE | WS_CHILD | WS_BORDER | TVS_LINESATROOT | TVS_HASLINES | TVS_HASBUTTONS | TVS_EDITLABELS, CRect(500, 50, 670, 200),this, IDC_TREE1);
……
TV_ITEM tvItem;
TV_INSERTSTRUCT tvInsert;
tvItem.mask = TVIF_TEXT; // 指定pszText成员可用
tvItem.pszText = "Item0"; // 根项目显示的字符
tvInsert.hParent = TVI_ROOT; // 指定父句柄
tvInsert.item = tvItem; // 指定TV_ITEM结构对象
tvInsert.hInsertAfter = TVI_LAST; // 项目插入方式
// 创建根项目,当前项目句柄保存于hItem0中
HTREEITEM hItem0 = m_ctrTreeCtrl.InsertItem(&tvInsert);
……
// 在根项目下继续创建第二层项目
tvItem.mask = TVIF_TEXT;
tvItem.pszText = "SubItem0";
tvInsert.hParent = hItem0;
tvInsert.item = tvItem;
tvInsert.hInsertAfter = TVI_LAST;
HTREEITEM hItem3 = m_ctrTreeCtrl.InsertItem(&tvInsert);

  作为同用户的接口,树形控件将在不同的动作下发出各种通知消息,可以在控件窗口的消息映射中添加ON_NOTIFY_REFLECT宏或是在控件所在父窗口的消息映射中添加ON_NOTIFY宏来为每一个通知消息指定处理函数。

  树形控件中的任何一个项目均可以拥有一个子项目列表,此列表可以随时处于展开或缩起状态。当处于展开状态时,对应的子项目将以缩进方式显示在父项目下;当处于缩起状态时,子项目将不显示。当用户在双击父项目时,相应的子项目列表将自动在展开与缩起状态切换。在子项目列表状态发生改变时和状态改变完成后树形控件将分别发出TVN_ITEMEXPANDING和 TVN_ITEMEXPANDED通知消息。关于其它的通知消息及其具体含义可参见下表:

通知消息 消息说明
TVN_BEGINDRAG 开始拖拽操作
TVN_BEGINLABELEDIT 开始编辑标签
TVN_BEGINRDRAG 开始鼠标右键拖拽操作
TVN_DELETEITEM 删除一个指定的项目
TVN_ENDLABELEDIT 结束编辑标签
TVN_GETDISPINFO 获取一个项目的显示信息
TVN_ITEMEXPANDED 子项目列表被展开或收起
TVN_ITEMEXPANDING 子项目列表正将展开或收起
TVN_KEYDOWN 键盘事件
TVN_SELCHANGED 项目的选择发生改变
TVN_SELCHANGING 项目的选择将要发生改变
TVN_SETDISPINFO 通知更新一个项目的信息

  小结

  本文对VC++编程中经常用到的按钮控件、编辑控件、树形控件、列表控件和组合框控件等Windows预定义的标准控件的动态创建、风格设置、通知消息的响应等内容作了具体的讲述,通过本文前述内容,读者可以掌握这些常用控件的一般使用方法。对于本文未提到的其他Windows标准控件,读者也可通过类似的方法予以实现。
  • 下一篇资讯: VC常用控件简介
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号