预览加载中,请您耐心等待几秒...
在线预览结束,喜欢就下载吧,查找使用更方便
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第l6卷第4期黄河水利职业技术学院学报2004年l0月Journ—alofYellowR—iverConservancyTechnicalInstitute.Net控件位置实现的递归算法王中友,王静显,张新安,郭自超(濮阳市黄河河务局,河南濮阳457000)摘要:简单的讨论了VisureStudio.net集成开发环境中控件位置属性的实现过程。将控件视为框架,根据框架之间的关系,给出了控件装入过程和位置属性实现的递归算法。可以根据本算法随心所欲地实现自己的控件位置属性。关键词:网络数据;集成框架;开发环境;递归算法中图分类号:TP312文献标识码:B文章编号:1008—486X(2004)04—0027—03lVisureStudio.net开发环境下的Anchor与的一端(除特殊情况DockStyle.Fill之外,Dock.Dock属性Style.Fill将会调整控件的大小,使其充满整个容在使用VisureStudio.net平台开发Windows框器)。架程序时,有两种用于调整控件大小和决定控件位置停靠一个控件时,它的位置就被锚定了。这个控的基本方法:件的停靠边缘和它的容器边缘是对齐的;另外,若调(1)在设计阶段,使用Windows框架设计器调整整了控件大小,与这个控件的停靠边相邻的边也与容控件的大小和决定控件的位置;器的边缘对齐。(2)在运行阶段,使用I~cation属性和Size属性2容器类控件(子框架)的装入过程管理控件的位置和大小。前面讨论了.Net开发环境为控件提供了Anchor尽管这些方法非常灵活,但是当你允许调整控件和Dock属性,在程序运行时动态调整控件的大小和窗口的大小时,这两种方法都会失灵。编写根据窗口位置,来适应框架大小的改变。图形用户界面(GUI)大小来手动调整控件大小的代码非常困难。实际上,包括按钮、文本框、标签、列表框等元素,每个这样的帮助调整控件大小的第三方控件总是包含在最通用元素都是一个控件。控件的Anchor和Dock属性是如的ActiveX控件中。.net框架中的控件具有Anchor和何实现的?这就涉及到如何在容器内装入控件、容纳Dock属性,在调整窗口大小时,可以利用这两个属性和组织其他控件的问题,下面详细论述控件位置实现自动调整大小或定位。的递归算法。1.1Anchor属性一个容器的管理模式是采用一个叫框架的特殊控件的Anchor属性锚定控件,指定容器的哪个矩形来容纳和组织其他控件的。对于一个框架,如果边缘控制控件的大小和位置。可以将Anchor属性设它的所有空间或一部分空间分配给其他框架,那么它置为一个或多个AnchorStyle枚举值(None,Top,Bot.就被称为那些框架的父框架,而那些框架称为该框架tom,Left,Right)。默认情况下,将控件锚定在窗口的的子框架。没有父框架的框架称为根框架。顶部和左边。当调整容器大小的时候,这个控件和窗框架中的剩余空间是指框架中未被其他子框架口的顶部及左边保持一个锚定的距离。占据的空间。在创建一个新的子框架时,将其在父框1.2Dock属性架的剩余空间中拉出一个沿着顶边或底边的从左边控件的Dock属性指定控件将停靠在容器(如框界延伸到右边界的横条状空间,称为水平子框架。或架)的哪个边缘。与Anchor属性的AnchorStyl枚举不者沿着左边界或右边界拉出一个从顶边到底边的竖同的是,不能组合多个DockStyle枚举值(Top,Bot.条状的空间,称为垂直子框架。因此,创建了一个新tom,Left,Right,Fill,None),而只能将控件停靠到容器的子框架后,剩余空间更小了,但它仍然是矩形。将收稿日期:2004—03—17作者简介:王中友(1965一),男,河北省卢龙县人,工程师,从事网络管理工作;王静显(1977一),女,河南省南乐县人,助理工程师,从事网络及网站管理工作。27黄河水利职业技术学院学报2004年第4期子框架放入容纳它的父框架的过程称为装入。在剩架中额外的垂直空间分配给它的子框架和剩余空间余空间中,子框架的放置与其装入的顺序有关。的方式与处理水平额外空间的方式是类似的,只是每个框架覆盖了矩形网格中的点,若根框架覆适当的改变其增长的方向。盖了C列r行的点,那么左上角的坐标就是(0,0),右扩展实例如图1所示,左图框架将被放大为右下角的坐标为(c一1,r一1)。框架的位置可以由它的图。框架6和7分别是水平和垂直子框架,其父框架左上角坐标和右下角坐标惟一确定。每个框架都有为框架5。仅有框架4、6、7设置了扩展标志。在左图最小的尺寸,由输入参数d(d对每个框架都不同)和的框架中,额外的垂直和水