我正在尝试在其下方的控件上显示一个相对于Button的表单.
但Button.top相对于底部表单的标题栏,顶部表单将相对于屏幕.
所以,为了弥补我现在需要的标题栏有多高.
我使用过Form.height-Form.ScalehHeight但是ScaleHeight不包括标题栏或边框,因此Scaleheight会略微膨胀.
任何人都知道如何计算的高度,只是标题栏?
您需要使用GetSystemMetricsAPI调用来获取标题栏的高度.
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Const SM_CYCAPTION = 4
Property Get TitleBarHeight() as Long
TitleBarHeight = GetSystemMetrics(SM_CYCAPTION)
End Property
Run Code Online (Sandbox Code Playgroud)
注意:这将返回高度(以像素为单位).如果你需要缇,你将不得不使用表格的ScaleY方法转换,如下所示:Me.ScaleY(TitleBarHeight(), vbPixels, vbTwips)
减去它:
(Form.height-Form.ScaleHeight) - (Form.Width-Form.ScaleWidth) / 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8293 次 |
| 最近记录: |