Adaptation taille USF à définition d'écran

FJPT

XLDnaute Junior
Bonjour à toutes et à tous

J'ai 2 questions à vous soumettre tournant autour du sujet titre de ce message :
1-J'ai adapté d'un fil de Thierry le changement de taille par SpinButton qui fonctionne trés bien si ce n'est que chez moi les USF se superposent au lieu de s'effacer. Qu'ai je loupé?
2-J'essaye de tester la définition d'écran par Application.DefaultWebOptions.ScreenSize
qui me renvoie toujours 3 quelle que soit la définition. Là encore quelle notion me manque-t'il?
Merci à toutes et à tous pour votre inépuisable présence et bon week-end.
F JP T
 

FJPT

XLDnaute Junior
Re : Adaptation taille USF à définition d'écran

Re bonjour

1er problème résolu : c'est parce que mon appel de USF était entre 2 ScreenUpdating

2ième question, je cale toujours. Merci à la bonne âme qui me donnera une explication.

Bon dimanche à toutes et à tous

F JP T
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : Adaptation taille USF à définition d'écran

Bonjour

pour mettre à la dimension de l'écran

Private Sub UserForm_Activate()

With Userform1
.StartUpPosition = 3
.Width = Application.Width
.Height = Application.Height
.Left = 0
.Top = 0
End With
 

FJPT

XLDnaute Junior
Re : Adaptation taille USF à définition d'écran

Bonjour Pascal

En fait le USF ne recouvre pas l'écran. Il était trop long suivant la définition.
J'ai trouvé un bout de code dans l'archive signé de "Guy" :

'Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
'Sub Res()
'Dim iResX As Integer
'Dim iResY As Integer
'
'iResX = GetSystemMetrics(0)
'iResY = GetSystemMetrics(1)
'
'MsgBox "La résolution est : " & iResX & " x " & iResY
'
'End Sub
que j'ai adapté rejoignant ainsi ce que tu me disais.

Declare Function GetSystemMetrics Lib "user32.dll" (ByVal nIndex As Long) As Long
Public L As Integer
Public H As Integer
Sub Res()
L = GetSystemMetrics(0)
H = GetSystemMetrics(1)
End Sub

Je l'utilise pour tester la hauteur d'affichage et modifie ainsi la taille de l'USF :

Private Sub UserForm_Initialize()
Res
Select Case H
Case 1024
With A_USF1
.Zoom = 100: .Height = 672: .Width = 350: .Label3.Font.Size = 10
End With
Case 960
With A_USF1
.Zoom = 92: .Height = 625: .Width = 325: .Label3.Font.Size = 9
End With
Case 864
With A_USF1
.Zoom = 82: .Height = 555: .Width = 290: .Label3.Font.Size = 10
End With
Case 768
With A_USF1
.Zoom = 70: .Height = 480: .Width = 250: .Label3.Font.Size = 9: .TreeView1.Font.Size = 8
End With
Case 720
With A_USF1
.Zoom = 65: .Height = 445: .Width = 230: .Label3.Font.Size = 9: .TreeView1.Font.Size = 7
End With
Case 600
With A_USF1
.Zoom = 53: .Height = 370: .Width = 190: .Label3.Font.Size = 9: .TreeView1.Font.Size = 6
End With
Case Else
MsgBox "Résolution de : " & L & " x " & H & " : non paramétrée."
End Select
End Sub

Mais je ne sais toujours pas, et c'était là ma question, pourquoi je n'arrive pas à faire fonctionner "Application.DefaultWebOptions.ScreenSize".

Merci à toi et à tous les intervenants pour leur disponibilité.

Bon dimanche à toutes et à tous

F JP T
 

Statistiques des forums

Discussions
312 682
Messages
2 090 889
Membres
104 689
dernier inscrit
phlentier