我们已经开发了Windows应用程序,它包含许多表单和控件,默认的小显示尺寸,它工作正常。 但在客户端系统中,显示不一致。因此,当相同的代码以中/大屏幕尺寸运行时,控件重叠
如果有人提供动态重新调整大小/适合形式的解决方案,那将是非常有帮助的。任何显示器的控件(小型100%,中型125%,大型150%)
还有什么方法可以在vb.net中找到显示尺寸(小型100%,中型125%,大型150%)
您可以在控制面板中更改显示尺寸。
答案 0 :(得分:0)
您可以使用Anchor属性根据其表单大小自动调整控件大小。您可以将控件的任何一侧锚定到表单的那一侧。例如,如果我将图片框的所有四个边都锚定到窗体,则在调整窗体大小时,图片框将模仿窗体的形状。例如,如果仅锚定图片框的顶部和底部,它将使用表单更改高度,但宽度和水平位置将保持不变。
答案 1 :(得分:0)
最后通过做R& D
找到了解决方案在Form_Load中调用以下函数,如ScaleForm(me)
Public Sub ScaleForm(WindowsForm As System.Windows.Forms.Form)
Using g As System.Drawing.Graphics = WindowsForm.CreateGraphics
Dim sngScaleFactor As Single
Dim sngFontFactor As Single = 1
If g.DpiX > 96 Then
sngScaleFactor = g.DpiX / 96
'sngFontFactor = 96 / g.DpiY
End If
If WindowsForm.AutoScaleDimensions = WindowsForm.CurrentAutoScaleDimensions Then
'ucWindowsFormHost.ScaleControl(WindowsForm, sngFontFactor)
WindowsForm.Scale(sngScaleFactor)
End If
End Using
End Sub