IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Cache de position des formulaires et des états [AC-2010]


Sujet :

IHM

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Ghana

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 109
    Points : 155
    Points
    155
    Par défaut Cache de position des formulaires et des états
    Bonjour/bonsoir à tous !

    Voilà une colle sur laquelle je bute depuis quelques jours maintenant, et ne suis pas parvenu à y trouver une solution.

    Contexte
    - Je travaille sur un projet Access 2010, sur un ordinateur disposant de 2 écrans.
    - La fenêtre access principale est masquée, si bien que seuls les formulaires et états sont visibles.

    Problème
    Lorsque je distribue mon application (mde front end), les utilisateurs finaux (qui n'ont pas tous 2 écrans à disposition) n'ont pas nécessairement accès à toutes les interfaces (formulaires / états) : le positionnement de ces objets reproduirait la configuration "double écran"

    Oui, les interfaces en question sont correctement paramétrées pour être visibles à l'écran même si l'application ne l'est pas ; par conséquent, j'en conclus que ce n'est pas un pb de visibilité de l'objet, mais de mémorisation des x et y

    Questions
    Existe-t-il un cache de positionnement des objets de l'ihm ?
    Si oui, où est-il ? et surtout comment le réinitialiser ?

    Un immense merci par avance au ninja qui arrivera à m'aider sur ce coup-là

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 355
    Points : 23 824
    Points
    23 824
    Par défaut
    Bonjour.

    Je soupçonne qu'il existe car quand tu ne spécifies pas "Centrage automatique" les formulaires s'ouvre à la dernière place où tu les a mis. Je n'ai jamais vu de propriété qui y corresponde.

    Fait un essai en ramenant manuellement tous tes formulaires sur 1 seul écran quand tu es en mode design.

    Si cela marche, peut-être activer le "Centrage automatique" pour lequel j'ai un faible.

    Sinon tu peux utiliser Docmd.MoveSize(0,0) dans l'événement "Sur Chargement" ou "Sur Ouverture" de ton formulaire pour ramener ton formulaire à l'origine en haut à gauche de la fenêtre Access.
    Je ne sais pas ce qui se passe si la fenêtre principale est cachée.

    A+

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Ghana

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 109
    Points : 155
    Points
    155
    Par défaut
    Merci beaucoup pour ces éléments de réponse :

    Citation Envoyé par marot_r Voir le message
    Je soupçonne qu'il existe car quand tu ne spécifies pas "Centrage automatique" les formulaires s'ouvre à la dernière place où tu les a mis. Je n'ai jamais vu de propriété qui y corresponde.
    Fait un essai en ramenant manuellement tous tes formulaires sur 1 seul écran quand tu es en mode design.
    Si cela marche, peut-être activer le "Centrage automatique" pour lequel j'ai un faible.
    Effectivement, en vérifiant un échantillon, certaines propriétés étaient à False... au temps pour moi

    Du coup, je vais ajouter une boucle type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ' Autocenter
                        If obj.AutoCenter = False Then
                            DoCmd.Close acForm, frm.Name, acSaveYes
                            obj.AutoCenter = True
                                Debug.Print "------> Form " & frm.Name & " has been set to Autocenter = True."
                            DoCmd.Close acForm, frm.Name, acSaveYes
                        End If ' obj.AutoCenter
    ...dans ma prochaine fonction de contrôle avant compilation.

    Citation Envoyé par marot_r Voir le message
    Sinon tu peux utiliser Docmd.MoveSize(0,0) dans l'événement "Sur Chargement" ou "Sur Ouverture" de ton formulaire pour ramener ton formulaire à l'origine en haut à gauche de la fenêtre Access.
    Oui, je l'ai fait ponctuellement, mais plutôt que surcharger sur tous mes objets, je préfèrerais trouver l'origine "native" du problème

    Citation Envoyé par marot_r Voir le message
    Je ne sais pas ce qui se passe si la fenêtre principale est cachée.
    Moi non plus, mais, c'était un éventuel élément de diag ; je pense que l'autocenter est à exploiter intégralement avant de chercher qqc de plus compliqué !

    Je teste et mets résolu dès que feedback, merci encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2013] insérer des formulaires dans un état
    Par totor92290 dans le forum IHM
    Réponses: 4
    Dernier message: 06/07/2015, 14h17
  2. Réponses: 5
    Dernier message: 13/11/2007, 05h25
  3. Réponses: 4
    Dernier message: 03/09/2007, 11h56
  4. Réponses: 1
    Dernier message: 07/08/2007, 21h22
  5. Récupérer données des tableaux issus des formulaires
    Par Romalafrite dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/02/2007, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo