ben depuis un bout de temps tu fait une conneriej'utilise ce code depuis un bout de temps
Re Patrick,bonjour cp4
et si l'app n'est pas maximisée ou ne doit pas l’être ben t es chocolat
et le must c'est cette ligne
ctl.Font.Size = ctl.Font.Size * ratioH
et tu fait quoi quand certains controls n'ont pas cette propriété du genre une scrollbars ou un spinbutton et bien d'autres encore hein tu fait quoi ????
ben depuis un bout de temps tu fait une connerie
Private Sub UserForm_Initialize()
Dim ctl As Control, ratioW#, ratioH#, wstate&
With Application: wstate = .WindowState: .WindowState = xlMaximized:
ratioW = Application.Width / Me.Width
ratioH = Application.Height / Me.Height
.WindowState = wstate
End With
With Me
.StartUpPosition = 0: .Left = 0: .Top = 0
.Width = (.Width * ratioW) - (.Width - .InsideWidth)
.Height = (.Height * ratioH) - (.Height - .InsideHeight) + (.Width - .InsideWidth)
End With
For Each ctl In Me.Controls
ctl.Move ctl.Left * ratioW, ctl.Top * ratioH, ctl.Width * ratioW, ctl.Height * ratioH
Select Case TypeName(ctl)
Case "TextBox", "Label", "Frame", "CommandButton", "MultiPage", "ListBox", "ComboBox", "CheckBox", "OptionButton"
ctl.Font.Size = ctl.Font.Size * ratioH
End Select
Next
End Sub
Private Sub UserForm_Activate()
Dim ctl As Control, ratioW As String, ratioH As String
ratioW = Application.Width / Me.Width
ratioH = Application.Height / Me.Height
Me.Left = 0
Me.Top = 0
Me.Width = Application.Width
Me.Height = Application.Height
For Each ctl In Me.Controls
ctl.Left = ctl.Left * ratioW
ctl.Top = ctl.Top * ratioH
ctl.Width = ctl.Width * ratioW
ctl.Height = ctl.Height * ratioH
If TypeOf ctl Is MSForms.ScrollBar Then GoTo suite
If TypeOf ctl Is MSForms.SpinButton Then GoTo suite
If TypeOf ctl Is MSForms.Image Then GoTo suite
ctl.Font.Size = ctl.Font.Size * ratioH
suite:
Next
End Sub
Ok, merci pour l'info. J'ai mis dans mon userform les quelques contrôles de ma boite à outils et effectuer des tests, d'où le complément de code. J'approfondirai plus tard car je suis un peu pris sur autre chose en ce moment.re
cp4
Dim ctl As Control, ratioW As double, ratioH As double
et il n'y a pas que ces 3 qui n'ont pas de font
relis bien le mien et pose toi les bonnes questions
Bonjour Patrick,voila
teste les deux userforms