Vb.net中Size和ClientSize的区别

  在进行VB.net设计中,当涉及到坐标、像素点位置时,尤其是需要特别精确具体的位置,我们离不开Size这一设置属性。窗体不止有Size,还有ClientSize,熟悉这两个属性的差别和联系对于我们精确控制坐标具有重要意义。

  设置Me.Size为设置窗体大小,窗体包含工作区和标题区;设置Me.ClientSize设置窗体工作区大小。示例如下图:

Vb.net中Size和ClientSize的区别

图1

Vb.net中Size和ClientSize的区别

图2

   如图一,后设置的ClientSize将原先的Size覆盖,而ClientSize还是按照设置的大小,但Size是基于ClientSize分别在宽度和高度上+16,+39;猜测这是一个固定值,如图二,后设置的Size将初始ClientSize基于给定的新Size值更改,更改规则相同,ClientSize的宽度和高度分别为Size的宽度和高度-16,-39。
  
结论:控件分为工作区和标题区,对于窗体控件,工作区的宽度+16=总宽度,工作区高度+39=总高度;代码表示:
Me.ClientSize.Width+16==Me.Size.Width
Me.ClientSize.Height+39==Me.Size.Height
上一篇:Android Dagger依赖注入框架浅析


下一篇:Android依赖注入:Google Guice on Android的使用及相关资源