Redimensionner les formulaires automatiquement à l’aide de ShrinkerStretcher
Access ne redimensionne pas les formulaires en fonction de la résolution écran.
Du coup, quand vous construisez vos formulaires, il est conseillé de définir votre taille écran en fonction de l’utilisateur final. Concrètement, si un utilisateur est en
1024x768
alors que tout le monde travaille en1900x1200
, vous construirez vos formulaires en abaissant votre propre résolution à1024x768
… Sinon, le « redesign » des formulaires peut vous demander pas mal de temps…Mais dans certaines situations, vous souhaiterez peut-être un redimensionnement automatique. C’est ici qu’intervient ShrinkerStretcher… (jetez un oeil au screencast en bas d’article, pour voir le résultat)
Télécharger ShrinkerStretcher
ShrinkerStretcher est donc une bibliothèque qui se charge de redimensionner vos formulaires « à la volée ». Cet outil peut être téléchargé sur le site de Peter’s Software.
Vous trouverez, à cette adresse des liens pour télécharger des versions d’évaluation, et en bas de la page, des liens pour acheter des licences (1 licence par application et par poste installé, quand même !).
Installer ShrinkerStretcher
Cet article utilise la version de démonstration, qui est fournie dans un fichier Zip :
- Commencez par extraire tout le contenu du fichier Zip (clic du bouton droit sur le fichier
ss.zip
, puis Extraire tout). - Dans le dossier obtenu, double-cliquez sur
Setup.exe
, ce qui lance l’installation (en fait d’installation, il s’agit surtout de décompresser plusieurs fichiers MDE, un fichier par version d’Access).
C:Documents and SettingsAll usersApplication DataPeters SoftwareShrinkerStretcher
. Ce sera utile pour la suite…Ajouter une référence à ShrinkerStretcher
Dans la version Démo, ShrinkerStretcher // qu’est-ce que c’est pénible à écrire, ce nom ! 😉 // est une bibliothèque externe (un fichier MDE) non modifiable. Pour que votre base de données puisse l’utiliser, vous devez lier la bibliothèque comme indiqué dans cet article. Concrètement :
- Ouvrez votre base de données.
- Faites apparaître Visual Basic Editor (vous pouvez par exemple taper
Alt
+F11
). - Cliquez sur le menu Outils, puis sur l’option Références.
- Cliquez sur le bouton Parcourir.
- C’est ici qu’il faut chercher un peu : rappelez-vous que la bibliothèque se place dans les documents partagés. Sur Windows XP, cherchez dans
C:Documents and SettingsAll usersApplication DataPeters SoftwareShrinkerStretcher
. - Il faut aussi que vous changiez le type de fichiers : « Tous les fichiers« , au lieu de « Bibliothèques de types« .
- Apparaissent enfin plusieurs fichiers MDE (ou ACCDE pour Access 2007). Sélectionnez le bon, en fonction de votre version d’Access.
Cette opération n’est bien sûr à faire qu’une seule fois pour une base de données précise.
Configurer un formulaire
Il ne reste plus qu’à paramétrer un formulaire, pour qu’il change de taille automatiquement. Ceci va être fait via 2 petites lignes de Visual Basic :
- Ouvrez votre formulaire en mode Création.
- Faites apparaître les propriétés du formulaire, onglet Evénement.
- Réglez l’événement
Sur ouverture
sur «Propriété événementielle
« , puis cliquez sur les points de suspension à droite. - Dans le bloc
Sub / End Sub
qui se présente, tapez :
SS_OnOpen Me
- Repassez dans les propriétés du formulaire.
- Réglez l’événement
Sur redimensionnement
sur «Propriété événementielle
« , puis cliquez sur les points de suspension à droite. - Dans ce nouveau bloc
Sub / End Sub
, tapez :
SS_OnResize Me, 1600, 1200
1600
et 1200
sont respectivement la largeur et la hauteur (en pixels) de l’écran sur lequel vous avez construit le formulaire. C’est grâce à ces 2 valeurs que ShrinkerStretcher peut calculer ses ratios pour redimensionner le formulaire. Si vous ne mettez aucune valeur, la résolution d’origine est supposée à 1024×768. Vous obtenez quelque chose comme ceci :
1 2 3 4 5 6 7 |
Private Sub Form_Open(Cancel As Integer) SS_OnOpen Me End Sub Private Sub Form_Resize() SS_OnResize Me, 1600, 1200 End Sub |
C’est tout ! Passez en mode Formulaire. Vous remarquez que les objets du formulaires, les images, les polices sont adaptés à la taille du formulaire (donc de l’écran, par extension). Ce n’est pas forcément hyper fluide, mais ça a le mérite de fonctionner.
Il ne reste plus qu’à faire de même pour vos autres formulaires…
est ce que sa fonctionnera pour une application sur access 2013 ?
A priori, ça devrait supporter effectivement Access 2013, en 32 et 64 bits.
Sur le site, il est écrit : « Now supports Access 2013 32 and 64-bit ».
Alain M > Effectivement, ShrinkerStretcher devient moins utile avec Access 2007+, grâce à l’ancrage. Ceci dit, il gère les polices de façon proportionnelle, ce que ne fait pas Access nativement. Ouala !
la version d’Access 2007 permet de rendre « élastique » les objets (cadres, champs, listes) dans un formulaire :
1° Sélectionner les objets à rendre « élastiques »
2° Cliquer sur l’onglet Réorganiser
3° cliquer sur l’icône Ancrage
4° Sélectionner le type d’ancrage désiré, ce qui revient à rendre étirables les objets des formulaires.
Cela fait plusieurs semaines que je cherchais ce redimensionnement automatique.
Merci beaucoup car avec ces explications la procédure est très simple!