Designer Autoscale (FORM - codice)




Option Strict Off
Option Explicit On
Friend Class Centimeter
Inherits System.Windows.Forms.Form

Private Sub Centimeter_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress
Dim KeyAscii As Short = Asc(eventArgs.KeyChar)
If KeyAscii = 27 Then
Me.Close()
End If

eventArgs.KeyChar = Chr(KeyAscii)
If KeyAscii = 0 Then
eventArgs.Handled = True
End If
End Sub


Private Sub Combo1_TextChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Combo1.TextChanged
Dim S As String
S = Mid(Combo1.Text, 1, 1)
If S = "0" Then
Me.ScaleMode.Text = CStr(0)
ElseIf S = "1" Then
Me.ScaleMode.Text = CStr(1)
ElseIf S = "2" Then
Me.ScaleMode.Text = CStr(2)
ElseIf S = "3" Then
Me.ScaleMode.Text = CStr(3)
ElseIf S = "4" Then
Me.ScaleMode.Text = CStr(4)
ElseIf S = "5" Then
Me.ScaleMode.Text = CStr(5)
ElseIf S = "6" Then
Me.ScaleMode.Text = CStr(6)
ElseIf S = "7" Then
Me.ScaleMode.Text = CStr(7)
End If

Me.Refresh()

LeggiVariabili()



End Sub


Sub LeggiVariabili()
Label5.Text = "Height = " & Me.Height & " - Width = " & Me.Width
Me.Text = " - ScaleHeight = " & VB6.FromPixelsY(Me.ClientRectangle.Height, VB6.ScaleMode.Centimeters) & " - ScaleWidth = " & VB6.FromPixelsX(Me.ClientRectangle.Width, VB6.ScaleMode.Centimeters)

Text2.Text = "TOP = " & VB6.FromPixelsY(Frame1.Top, VB6.ScaleMode.Centimeters) & vbCrLf & "LEFT = " & VB6.FromPixelsX(Frame1.Left, VB6.ScaleMode.Centimeters) & vbCrLf & "Height = " & VB6.FromPixelsY(Frame1.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Frame1.Width, VB6.ScaleMode.Centimeters) & vbCrLf
Text6.Text = "ScaleHeight = " & VB6.FromPixelsY(Me.ClientRectangle.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Me.ClientRectangle.Width, VB6.ScaleMode.Centimeters)


Text1.Text = "TOP = " & VB6.FromPixelsY(Frame2.Top, VB6.ScaleMode.Centimeters) & vbCrLf & "LEFT = " & VB6.FromPixelsX(Frame2.Left, VB6.ScaleMode.Centimeters) & vbCrLf & "Height = " & VB6.FromPixelsY(Frame2.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Frame2.Width, VB6.ScaleMode.Centimeters) & vbCrLf



Text5.Text = "TOP = " & VB6.FromPixelsY(Frame3.Top, VB6.ScaleMode.Centimeters) & vbCrLf & "LEFT = " & VB6.FromPixelsX(Frame3.Left, VB6.ScaleMode.Centimeters) & vbCrLf & "Height = " & VB6.FromPixelsY(Frame3.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Frame3.Width, VB6.ScaleMode.Centimeters) & vbCrLf


Text3.Text = "TOP = " & VB6.FromPixelsY(Frame4.Top, VB6.ScaleMode.Centimeters) & vbCrLf & "LEFT = " & VB6.FromPixelsX(Frame4.Left, VB6.ScaleMode.Centimeters) & vbCrLf & "Height = " & VB6.FromPixelsY(Frame4.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Frame4.Width, VB6.ScaleMode.Centimeters) & vbCrLf

Text4.Text = "TOP = " & VB6.FromPixelsY(Frame5.Top, VB6.ScaleMode.Centimeters) & vbCrLf & "LEFT = " & VB6.FromPixelsX(Frame5.Left, VB6.ScaleMode.Centimeters) & vbCrLf & "Height = " & VB6.FromPixelsY(Frame5.Height, VB6.ScaleMode.Centimeters) & vbCrLf & "Width = " & VB6.FromPixelsX(Frame5.Width, VB6.ScaleMode.Centimeters) & vbCrLf


Dim S As String


Me.Refresh()



S = Mid(Combo3.Text, 1, 1)
If S = "0" Then
Me.Font = VB6.FontChangeSize(Me.Font, 8)
ElseIf S = "1" Then
Me.Font = VB6.FontChangeSize(Me.Font, 10)
ElseIf S = "2" Then
Me.Font = VB6.FontChangeSize(Me.Font, 12)
ElseIf S = "3" Then
Me.Font = VB6.FontChangeSize(Me.Font, 14)
ElseIf S = "4" Then
Me.Font = VB6.FontChangeSize(Me.Font, 18)
ElseIf S = "5" Then
Me.Font = VB6.FontChangeSize(Me.Font, 20)
ElseIf S = "6" Then
Me.Font = VB6.FontChangeSize(Me.Font, 24)
ElseIf S = "7" Then
Me.Font = VB6.FontChangeSize(Me.Font, 26)
End If


Me.Refresh()



End Sub

Private Sub Combo1_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Combo1.SelectedIndexChanged
Dim S As String
S = Mid(Combo1.Text, 1, 1)
If S = "0" Then
Me.ScaleMode.Text = CStr(0)
ElseIf S = "1" Then
Me.ScaleMode.Text = CStr(1)
ElseIf S = "2" Then
Me.ScaleMode.Text = CStr(2)
ElseIf S = "3" Then
Me.ScaleMode.Text = CStr(3)
ElseIf S = "4" Then
Me.ScaleMode.Text = CStr(4)
ElseIf S = "5" Then
Me.ScaleMode.Text = CStr(5)
ElseIf S = "6" Then
Me.ScaleMode.Text = CStr(6)
ElseIf S = "7" Then
Me.ScaleMode.Text = CStr(7)
End If

Me.Refresh()

LeggiVariabili()

End Sub

Private Sub Combo2_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Combo2.SelectedIndexChanged
LeggiVariabili()
End Sub

Private Sub Combo3_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Combo3.SelectedIndexChanged
LeggiVariabili()
End Sub

Private Sub Centimeter_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load
LeggiVariabili()
End Sub



Private Sub Centimeter_Resize(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Resize
LeggiVariabili()
End Sub

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
If Mid(ComboBox1.Text, 1, 1) = 0 Then
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None
ElseIf Mid(ComboBox1.Text, 1, 1) = 1 Then
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit
ElseIf Mid(ComboBox1.Text, 1, 1) = 2 Then
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
ElseIf Mid(ComboBox1.Text, 1, 1) = 3 Then
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit
End If
LeggiVariabili()
End Sub
End Class










( designerautoscaleformcodice.html )- by Paolo Puglisi - Modifica del 17/12/2023