Bonsoir,
Quelqu'un pourrait-il m'expliquer la diffrence entre ces deux propriétés svp ?
Merci pour vos réponses.
Bonsoir,
Quelqu'un pourrait-il m'expliquer la diffrence entre ces deux propriétés svp ?
Merci pour vos réponses.
Bonsoir,
WindowHeight et WindowWidth s'appliquent à la fenêtre du formulaire (pourtour extérieur).
InsideHeight et InsideWidth s'appliquent à l'intérieur de la fenêtre du formulaire.
Par exemple, sur un formulaire classique, InsideHeight, c'est WindowHeight moins la hauteur ...
- de la barre de titre de la fenêtre du formulaire
- du bandeau contenant les boutons de déplacements
- de la barre de défilement horizontal
- de la bordure inférieure de la fenêtre du formulaire
On peut aussi définir InsideHeight, comme la distance (en twips) entre le début (haut) de la section en-tête de formulaire et la fin (bas) de la section pied de formulaire.
Cette hauteur change si on redimensionne la fenêtre et sera le plus souvent différente de la somme des hauteurs des sections (en-tête de formulaire, Détail, pied de formulaire).
A+
Merci d'avoir répondu LedZeppII.
J'ai trouvé ce code sur le site pour redimensionner un sous-formulaire :
Ce que j'ai du mal à comprendre, c'est pourquoi calcule-t-on une valeur pour frmSousForm.InsideHeight, alors que l'on ne s'en sert plus après ? Et pourquoi se sert-on de frmSousForm.WindowHeight pour donner une valeur à objSousForm.Height au lieu de frmSousForm.InsideHeight ? Et comment cela se fait-il que frmSousForm.InsideHeight et frmSousForm.WindowHeight aient la même valeur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Dim objSousForm As Object Dim frmSousForm As Form Dim nbMaxLignes As Long 'Vos déclarations Set objSousForm = Me!TonSousForm Set frmSousForm = objSousForm.Form nbMaxLignes = 3 'limite la hauteur à n lignes et affiche le défilement vertical If frmSousForm.RecordsetClone.RecordCount <= nbMaxLignes Then frmSousForm.InsideHeight = frmSousForm.Section(acHeader).Height _ + frmSousForm.Section(acFooter).Height _ + frmSousForm.Section(acDetail).Height _ * (frmSousForm.RecordsetClone.RecordCount _ - frmSousForm.AllowAdditions) objSousForm.Height = frmSousForm.WindowHeight frmSousForm.ScrollBars = 0 'aucune barre de défilement Else frmSousForm.InsideHeight = frmSousForm.Section(acHeader).Height _ + frmSousForm.Section(acFooter).Height _ + frmSousForm.Section(acDetail).Height _ * (nbMaxLignes - frmSousForm.AllowAdditions) objSousForm.Height = frmSousForm.WindowHeight frmSousForm.ScrollBars = 2 'barre de défilement verticale End If
Bonjour,
Le code calcule la valeur qu'il faut donner à la propriété InsideHeight du formulaire intégré en tant que sous-formulaire dans un contrôle sous-formulaire.
Le calcul consiste à calculer la somme des hauteurs des sections.
Attention : les hauteurs sont fixes.
Quel que soit le nombre d'enregistrements affichés, la hauteur de la section Détail est toujours la hauteur correspondant à un seul enregistrement.
C'est pour ça qu'on la multiplie par le nombre d'enregistrements.
Donc, le code calcule la hauteur totale et l'affecte à InsideHeight.
WindowHeight s'ajuste automatiquement en conséquence.
Ensuite on définie la hauteur (Height) du contrôle sous-formlaire, en lui affectant la valeur de la propriété WindowHeight
du sous-formulaire, car celle-ci peut être supérieure à InsideHeight.
Par exemple s'il y a une barre de défilement horizontal ou les boutons de navigations.
Si WindowHeight est égal InsideHeight, c'est que ton sous-formulaire n'affiche rien d'autre que les trois sections.
Et contrairement à un formulaire, un sous-formulaire n'a pas de bordures, ni de barre de titre.
A+
Merci beaucoup pour tes lumières. Ca m'aidera pour la suite de mon projet.
Tu trouveras sans doute beaucoup d'autres questions de moi sur le forum Access, on me dit souvent que je pose trop de questions...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager