是否可以调整vb6内部表单的大小,因为如果我使用Form1.Height
或Form1.Width
它包括窗口边框的高度和宽度,那么我只能在一个窗口主题中使用此代码(例如它的在使用XP主题的WinXP中工作得最好,但在WinXP中没有使用经典主题,它看起来太长了),有什么建议吗?
答案 0 :(得分:3)
您可以做的是将宽度(外部大小)与ScaleWidth(内部大小)进行比较,以获得非客户端边框的大小。同样,您可以将高度与ScaleHeight进行比较,以获得顶部和底部的非客户端大小。从中您可以根据您想要的加上非客户端大小的内部(客户区域)大小设置最终的高度和宽度。
这样的内容可能会出现在Form_Load
:
Const DesiredClientHeight as Single = 3435
Const DesiredClientWidth as Single = 3345
Dim fNonClientHoriz As Single, fNonClientVert As Single
fNonClientHoriz = Me.Width - Me.ScaleWidth
fNonClientVert = Me.Height- Me.ScaleHeight
Me.Width = DesiredClientWidth + fNonClientHoriz
Me.Height = DesiredClientHeight + fNonClientVert
请注意,表单宽度和高度始终为缇,因此如果您将缩放模式更改为缇以外的其他模式,则需要考虑到这一点。