分享
 
 
 

Object TreeView简要说明

王朝delphi·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

Object TreeView简要说明

在Delphi 6 IDE中,最显眼的新功能可能就是Object TreeView了。由于Delphi 6比较新,介绍它的资料还很少,所以很多人不知道如何使用Object TreeView,甚至嫌它太占地方而将它关闭了。事实上,当窗体上的构件越来越多的时候,你才会发现Object TreeView的强大功能。

以下是关于Object TreeView功能的一个简单介绍,其主要内容取自《Mastering Delphi 6》,我只是做一些整理和翻译的工作罢了。希望能对使用Delphi 6的朋友有所帮助。

关于Object TreeView的使用

1.在Delphi 5的Data Module设计器中,使用了一个TreeView来显示非可视构件(如DataSet, Fields,Actions等等)之间的关系。Delphi 6中的Object TreeView则是它的扩展,它不仅对于Data Module,对于普通窗体和其他对象也可用。

如果Object TreeView当前不可见,而又想使用它,选择View | Object TreeView即可。

2.Object TreeView使用层次视图来显示窗体上的构件以及它们之间的关系。最典型的是父子关系:例如,所有Form上的构件都是Form的子节点;又如,放一个Panel到窗体上,再往Panel上面放一个Button,则Button会成为Panel的子节点。

Object TreeView,Object Inspector和窗体设计器是同步的。这就是说,在窗体上选择一个构件,则在Object TreeView中也会自动选中该构件,同时Object Inspector中显示该构件的属性和事件;同理,在Object TreeView中选择一个构件,窗体上也会同时选择该构件,在Object Inspector中显示其属性和事件。因此,Object Inspector可以看作窗体设计器的一个增强,在窗体上构件比较多,而且彼此覆盖的时候,在Object Inspector种选择一个构件往往比从窗体上面选择或者从Object Inspector的列表中查找要方便快捷。

3.Object TreeView中还能够显示构件之间的其他关系。举例如下:

(1)用Menu Designer设计菜单,所有菜单项按其在菜单中的层次显示在MainMenu节点下;

(2)对于数据集构件,例如TTable,Object TreeView还会显示它在运行时刻将产生的一些对象,例如Session,Alias等,但由于它们是运行时刻才产生的,所以无法编辑它们的属性,在Object TreeView中这些对象将以无名称的节点和一个特殊的图标来表示,并且在选中这些节点的时候,Object Inspector中没有属性可以编辑。

(3)对于ListView,Object TreeView还会列出它的Columns,在Columns上面点击右键,就可以直接编辑各个列。这比从Form Designer上面选择ListView,再选择Columns Editor来的方便。其他一些构件也有类似的情况,例如HeaderControl的Sections,CoolBar的Bands,StatusBar的Panels,都可以从快捷菜单中直接编辑。(ToolBar默认情况下虽然没有将Buttons列出,但是仍然可以在从Object TreeView中ToolBar的快捷菜单中建立Button和Separator。)

4.想精确设置构件之间的Contains关系,Object TreeView也是一个有用的工具。可以通过下面的试验来验证:

(1)在窗体上面放置一个Panel;

(2)从构件面板上选择Button构件;

(3)将鼠标定位在Object TreeView上面(但先不要按下)。你会注意到,当鼠标指向可以作为Container的构件,例如Form和Panel的时候,光标形状会变成一个箭头带一页纸的形状,这说明构件可以放置到Container上面。相反,如果鼠标停留在ListBox,Label这样的构件上面,那么光标将会变成No Drop形状,说明它们不能作为Container。

(4)将光标定位在Panel上面,并按下左键。Button将自动成为Panel的子节点,同时,Panel和Button也建立起了contains关系。

你可以很容易的改变构件之间的Contains关系。例如,在Object TreeView中拖动Button到Form上面,则现在拥有Button的Container就不再是Panel,而是Form本身了。在过去,这种操作是通过Cut&Paste来完成的,但是Cut&Paste也有一个缺点,那就是一个构件被剪切后,它和其他构件之间的关联就丢失了。而使用Object TreeView,不会有这种缺点。

在窗体上面的构件很多,并且彼此覆盖的时候,在Form Designer中查找和操作某个构件就变得相当麻烦。在这个时候,Object TreeView更能够显示它的作用。

Object TreeView和Code Editor中的Diagram视图配合,还能够发挥更为强大的作用。不过这些内容相当多,需要另外用一个专题来讲述了。

Object TreeView很有用,不过代价是要多占一点屏幕空间。由于Delphi IDE支持各个工具的Docking,你可以将Object TreeView和Object Inpector组合在一起,成为一个窗口,这样可以稍稍节省一点屏幕空间。Object TreeView和Object Inspector既可以左右排列,也可以上下排列,这两种方式各有优缺点。你可以选择你喜欢的方式,然后用Desktop工具栏上Save Desktop按钮,来将你的桌面设置保存起来供下次使用。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有