Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共10 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:探讨:控件锚定的想法

1楼
yangming 发表于:2009/5/16 14:30:00
控件锚定的问题,我看了一下这个问题,我感觉,只有锚定了四边,"那么窗口大小改变时,控件将同时调整高度和宽度,以便和窗口四个边界的距离保持不变"
但是默认的是"锚定于其容器的左上角,这意味着窗口大小改变时,控件并不会随之移动或改变大小"
我的想法:
1.如果只有要锚定四边,才能保持不变,那为何不能将默认改成:锚定四边呢?
2.控件的锚定是在一个一个的设置锚定,为何不能批量设置呢?
请贺老师考虑一下,是否可以改改?
2楼
八婺 发表于:2009/5/16 15:09:00
默认锚定四边肯定不行的,因为要锚定四边的控件在实际使用中毕竟是少数。
3楼
yangming 发表于:2009/5/16 15:16:00

我认为锚定四边的不在少数啊,呵呵
第二个问题能批量锚定如能实现也不错啊

[此贴子已经被作者于2009-5-16 15:47:15编辑过]
4楼
cpayinyuan 发表于:2009/5/16 17:37:00
以下是引用yangming在2009-5-16 15:16:00的发言:

我认为锚定四边的不在少数啊,呵呵
第二个问题能批量锚定如能实现也不错啊

[此贴子已经被作者于2009-5-16 15:47:15编辑过]

    第一个问题不同意您的看法.窗口中需要锚定四边的控件主要包括Table,DataList,页面集合等,一般是容器类或者列表类的控件,这类控件在窗口中的数目很少.但大部分的控件,例如标签类/输入框类/按钮类等,数目众多,这些都是不需要锚定四边的,要不然,把按钮和输入框都锚定四边,就麻烦了.
   至于能批量锚定,这是个好的建议.以前我建议过,不仅仅是锚定,窗口控件的很多属性都不能批量设定,也再次向贺老师建议能够对控件的更多属性提供批量设置功能!

5楼
yangming 发表于:2009/5/16 18:50:00
以下是引用cpayinyuan在2009-5-16 17:37:00的发言:

    第一个问题不同意您的看法.窗口中需要锚定四边的控件主要包括Table,DataList,页面集合等,一般是容器类或者列表类的控件,这类控件在窗口中的数目很少.但大部分的控件,例如标签类/输入框类/按钮类等,数目众多,这些都是不需要锚定四边的,要不然,把按钮和输入框都锚定四边,就麻烦了.
   至于能批量锚定,这是个好的建议.以前我建议过,不仅仅是锚定,窗口控件的很多属性都不能批量设定,也再次向贺老师建议能够对控件的更多属性提供批量设置功能!

那我是理解错了?我以为所有的按件都要锚定四边呢,呵呵
另外,动态生成的Table如何锚定?

我一个主窗口,一个窗口上下放二个动态生成的Table,这种动态生成的Table又如何锚定呢?

[此贴子已经被作者于2009-5-16 18:52:08编辑过]
6楼
shxiaoya 发表于:2009/5/16 21:15:00
以下是引用yangming在2009-5-16 18:50:00的发言:

那我是理解错了?我以为所有的按件都要锚定四边呢,呵呵
另外,动态生成的Table如何锚定?

我一个主窗口,一个窗口上下放二个动态生成的Table,这种动态生成的Table又如何锚定呢?

[此贴子已经被作者于2009-5-16 18:52:08编辑过]

将table控件锚定就行了

7楼
yangming 发表于:2009/5/16 22:18:00
动态生成的Table,请问如何锚定?
8楼
八婺 发表于:2009/5/17 0:29:00
现在估计只能用SetBounds固定位置,没办法锚定自适应窗口的。
9楼
狐狸爸爸 发表于:2009/5/18 8:01:00
以下是引用八婺在2009-5-17 0:29:00的发言:
现在估计只能用SetBounds固定位置,没办法锚定自适应窗口的。


可以的,例如锚定右下角:

 

Dim t As WinForm.Table
t = e.Form.CreateControl(
"表A", ControlTypeEnum.Table)
t.Anchor = Windows.Forms.AnchorStyles.Right
Or Windows.Forms.AnchorStyles.Bottom
e.Form.AddControl(t)


说明:

 Bottom 该控件锚定到其容器的下边缘。 
 Left 该控件锚定到其容器的左边缘。 
 None 该控件未锚定到其容器的任何边缘。 
 Right 该控件锚定到其容器的右边缘。 
 Top 该控件锚定到其容器的上边缘。


帮助没有介绍,因为很少有人需要修改锚定属性的。

[此贴子已经被作者于2009-5-18 8:01:55编辑过]
10楼
yangming 发表于:2009/5/18 9:04:00
因为我是一个窗口上下动态生成二个Table,所以我想,用你说的方法固定不好办,
我的做法是下面的代码:试了一下,各种分辨率都还可以.
Dim t As WinForm.Table
t = Forms("导航1").CreateControl("员工档案", ControlTypeEnum.Table)
t.SetBounds(215,50,e.Form.Width-230,e.Form.Height*0.45)
Forms("导航1").AddControl(t)
Dim t1 As WinForm.Table
t1 = Forms("导航1").CreateControl("调出人员表", ControlTypeEnum.Table)
t1.SetBounds(215,e.Form.Height*0.45+90,e.Form.Width-230,e.Form.Height*0.35)
Forms("导航1").AddControl(t1)
[此贴子已经被作者于2009-5-18 9:05:08编辑过]
共10 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.