VB6.0设计真正实用的TreeView控件

2016-01-29 12:04 197 1 收藏

VB6.0设计真正实用的TreeView控件,VB6.0设计真正实用的TreeView控件

【 tulaoshi.com - vb 】

  TreeView是最灵活的Windows控件之一,它以分层的形式显示数据,允许用户随意扩展或折叠节点。鉴于实际生活中许多事物有着层次关系,如计算机里的文件夹、人事组织关系、地区从属关系等,TreeView的应用也极其广泛。但在实际开发中,许多人不喜欢使用TreeView,主要是由于默认的TreeView是“只读”的,不支持添加、删除、编辑、调整节点位置等操作。本文将通过一个TVEdit工程说明如何解决这些问题。

  TVEdit工程(图一)允许在运行时生成节点数据、编辑节点标签、通过拖放操作改变节点的位置,以及将TreeView的数据保存到XML文件或从XML文件读取。


             图一
  一、规划键击事件

  修改用户界面控件的默认行为不仅要考虑到用户如何通过鼠标访问新的控件功能,而且还要允许用户使用键盘操作。TreeView默认支持下列键击事件:

   ▲ 上下两个箭头键移动光标(变换当前被选中的节点)。

   ▲ 左右箭头键除了变换当前被选中的节点之外,兼具扩展/折叠节点功能。

   ▲ Enter键扩展或折叠节点。

  TVEdit工程不改变这些默认的键击行为。但由于TreeView默认的键击事件不允许用户编辑其内容,所以我们要另外添加几个事件:

   ▲ 按Insert键在当前选中的节点之下插入一个新的节点。如果要添加一个新的根节点,按Ctrl+Insert键。用户按下Insert键之后,控件自动进入编辑状态,再按Enter键可退出编辑状态,控件自动选中父节点,以便用户只需按一下Insert键就可以在同一父节点之下插入新节点。

   ▲ 按Space键(或鼠标停留较长时间)使当前选中的节点进入编辑状态(也许有的人更乐意用Enter键进入编辑状态,但TreeView控件已经定义了Enter键的默认行为,所以这里不再用它)。

   ▲ 按Delete键删除当前选中的节点。如果被删除的节点包含子节点,所有子节点也被同时删除。

   ▲ 用鼠标拖放节点可改变节点在TreeView分层结构中的位置。如果被拖动的节点包含子节点,所有子节点也将被移动。


来源:https://www.tulaoshi.com/n/20160129/1484486.html

延伸阅读
在c++中是很容易实现,,因为c++可以操纵指针,,但是vb不是很好的玩这个,,所以需要通过类库来实现 说白了就是找个中间层,,让他翻译成vb能够认识的玩艺,,不说废话,,开始咯 中文实名无非是用ie 的iurlsearchhook,但是3721可不是这么玩得,,他是使用api hook拦截 ie commbox的消息,,,你根本就快不过他,,嘿嘿,,3721阴险把,,虽...
标签: vb
对一副图像处理后,可以得到各种各样的效果图。比如图像的锐化图、柔化图、浮雕效果图、复古效果图、彩色便笺效果图等,只要打开Photoshop,你不能不为各种各样的效果图惊叹,一副图片竟能产生出如此之多的效果。 本文对图像处理的特殊效果之一--加柔的实现,介绍了一种简单的算法。 图像加柔的原理 图像加柔效果的原理...
软盘是数据的常用载体,我们的软件可能会提供用户将数据备份到软盘上的功能。为避免软盘上有带有病毒的文件,最安全的办法就是提醒用户将软盘格式化。 Visual Basic可以通过调用API函数格式化一个磁盘,无论是软盘还是硬盘。 打开一个新的项目(project1) ,如果你没有更改过缺省模式,那么Visual Basic会自动添加一个form1文件,在fo...
标签: vb
作为微软旗下一款优秀的RAD工具,VB在数据库应用开发方面的能力十分强大。微软设计了多种数据库访问方法,下面通过对VB访问数据库的多种技术进行深入剖析,并总结出实际开发中的几点经验。希望能够对那VB的初学者有所帮助。(注意,文中所有的描述均在Windows 2000 professional和Visual Basic 6.0的环境下进行的) 一. DAO、RDO、...
1、如果一行程序太长,能不能换行? VB的程序代码是允许换行书写的,只要在每次换行的最后一个字符加上换行字符“_”就可以了。例如: SubPicMove() Frm.Picture2.Left=Frm.Picture1.Left _’加上换行符 Frm.Picture1.Width EndSub 2、如何在设计的时候清空存在的图片? 用鼠标点中该图片,在属性窗口中选中Pict...

经验教程

746

收藏

60
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部