我有一个表格创建来提供有关您所使用的计算机的信息,当我们将它部署到表面专业4时,我们没有考虑DPI并且它会爆炸测试并且在表单中是不可读的。见下文。
坏形式:
这应该是它的样子:
我已经尝试了所有AutoSizeMode并将其放入组和表中,似乎没有任何效果。我把它放在StackOverflow上,看看是否有人有一个很好的解决方案。以下是表格的基础:
#Background Image
$Image = [system.drawing.image]::FromFile("Desktop.jpg")
$Form.BackgroundImage = $Image
$Form.BackgroundImageLayout = "Stretch"
#button
$Button = New-Object System.Windows.Forms.Button
$Button.TabIndex = 0
$Button.Name = "Button"
$System_Drawing_Size = New-Object System.Drawing.Size
$System_Drawing_Size.Width = 160
$System_Drawing_Size.Height = 30
$Button.Size = $System_Drawing_Size
$Button.UseVisualStyleBackColor = $True
$Button.Text = "Button"
$System_Drawing_Point = New-Object System.Drawing.Point
$System_Drawing_Point.X = 13
$System_Drawing_Point.Y = 230
$Button.Location = $System_Drawing_Point
$Button.DataBindings.DefaultDataSourceUpdateMode = 0
$Button.add_Click({Function1})
$Font = New-Object System.Drawing.Font("Calibri",11.5 [System.Drawing.FontStyle]::Regular)
$Form.Font = $Font
#Lables for the computer information and displays them
$Label = New-Object System.Windows.Forms.Label
$Label.Text = "`n Phone: $CallServiceDesk `n E-Mail: `n IP Address: $IPAddress `n Computer Name: $env:computername `n Username: $env:username `n Domain: $env:userdomain `n HomeServer: $env:HOMESERVER `n AssetTag: $env:TIA `n Service Tag: $env:servicetagsn `n McAfee Proxy: $Proxy"
$Label.BackColor = "Transparent"
$Label.AutoSize = $True
$Form.Controls.Add($Email_Label)
$Form.Controls.Add($Call_Label)
$Form.Controls.Add($Label)
$Form.Controls.Add($Button)
$Form.Controls.Add($Learn_Label)
$Form.ShowDialog()
if ($Form -eq "Cancel"){exit}
答案 0 :(得分:0)
我通过在我的字体变量
中添加[System.Drawing.GraphicsUnit]::Pixel
来修复此问题
$Font = New-Object System.Drawing.Font("Segoe UI",13,[System.Drawing.FontStyle]::Regular,[System.Drawing.GraphicsUnit]::Pixel)
$Form.Font = $Font