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 :

Dans un état, position variable d'un champ et hauteur variable de la section détail [AC-2003]


Sujet :

IHM

  1. #1
    Membre averti
    Homme Profil pro
    Buisint
    Inscrit en
    Septembre 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Buisint

    Informations forums :
    Inscription : Septembre 2008
    Messages : 220
    Points : 438
    Points
    438
    Par défaut Dans un état, position variable d'un champ et hauteur variable de la section détail
    Bonjour,

    Après d'infructueuses recherches sur ce forum et au-delà, je me résous à poster mon problème :

    Premièrement, dans un état, en fonction du type de ligne, qui peut être "article" ou "commentaire" pour ce premier problème, j'ai besoin de décaler un champ mémo vers le haut ou vers le bas de la section Détail.
    Il doit en effet, s'imprimer après la désignation de l'article lorsque la ligne est de type "article", ou à la place de cette désignation lorsque la ligne est de type "commentaire".

    Voici un exemple de ce à quoi devrait ressembler la section Détail :
    cas "article"
    Porsche 911
    Cette voiture est jolie et rapide.
    D'abord la désignation, puis le commentaire.

    cas "commentaire"
    Cette voiture est jolie et rapide.
    Seulement le commentaire.

    J'ai essayé avec les solutions suivantes dans le code de l'événement Détail_Print :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ' Le champ "commentaire" s'appelle "Descriptif"... et l'échelle est forcée en Twips.
    [Descriptif].Move Left:=0, Top:=30  
    Me.Descriptif.Top = 30
    Me.Descriptif.Move 0, 30
    Et rien de tout cela ne fonctionne, m'opposant que "Le paramètre entré n'est pas valide pour cette propriété."

    Quelqu'un aurait-il une idée de la syntaxe correcte ?

    Deuxièmement, j'aimerais pouvoir ajuster la hauteur de la section Détail, et notamment la réduire dans le cas d'une ligne de type "article" dont les commentaires seraient vides.
    Ainsi, je pourrais récupérer le "rabiot" de hauteur où j'ai loger mon champ mémo, pour imprimer plus d'articles sur la page et faire plus propre...
    Pour ce faire, je me suis naïvement dit que la propriété Height de la section Détail semblait avoir un lien assez puissant avec mon besoin.

    Mais, Access ne cesse de me rétorquer qu'elle est en écriture seule, et
    ne fonctionne pas...

    L'aide Microsoft ayant la gentillesse d'indiquer qu'elle ne peut être modifiée une fois le processus d'impression démarré, j'ai donc essayé de déplacer ce code de l'événement Print à l'événement Format, mais sans guère plus de succès.

    M'y prends-je comme un manche, ou l'éventuelle solution est-elle vraiment sioux ?

    Merci à tous ceux qui se pencheront sur cet épineuse épine dans mon pied.

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Avec ce bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
    If Me.txtCode = 1 Then
        Me.txtCode.Height = 500
        Me.Section(0).Height = 1500
      Else
        Me.txtCode.Height = 1000
        Me.Section(0).Height = 2500
    End If
    End Sub
    Tu peux moduler la hauteur d'un contrôle et la hauteur de la section détail (indice 0) en fonction d'un critère.

    Résultat :
    Images attachées Images attachées  

  3. #3
    Membre averti
    Homme Profil pro
    Buisint
    Inscrit en
    Septembre 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Buisint

    Informations forums :
    Inscription : Septembre 2008
    Messages : 220
    Points : 438
    Points
    438
    Par défaut Merci
    Bonjour Claude,

    Merci pour ta réponse qui fonctionne au poil.
    Grâce à tes informations, j'arrive effectivement à moduler la hauteur de ma ligne "Détail", du moins tant qu'elle n'est pas inférieure à la hauteur de mes contrôles.

    Au passage, tu m'apprends comment faire de même pour la hauteur des contrôles.

    J'ai également appliqué la technique à la coordonnée Y de mes contrôles (le premier point de ma demande) et cela fonctionne aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
        Select Case [INT_Contexte_ligne]
            Case LDEV_TITRE
                Me.Section(0).Height = 281 ' 0,495 cm
     
            Case LDEV_COMMENTAIRE
                Me.Descriptif.Top = 0         <------- ICI
     
            Case LDEV_VIDE
            Case Else
        End Select
    End Sub
    Alors même que la propriété "Top" n'existe pas dans la liste fournie par VBE !

    A ce sujet, je suis peut-être un peu pointilleux, mais cela ne risque-t-il pas de me poser des soucis par la suite ? Ou ma syntaxe serait-elle encore incorrecte ?

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Content d'avoir des nouvelles de ton pied !


    Grâce à tes informations, j'arrive effectivement à moduler la hauteur de ma ligne "Détail", du moins tant qu'elle n'est pas inférieure à la hauteur de mes contrôles.
    Tu pourrais déterminer la hauteur minimale en recherchant la position du bas du contrôle le plus proche du bord inférieur.


    Alors même que la propriété "Top" n'existe pas dans la liste fournie par VBE !
    Il y a d'autres cas, il suffit de tenter sa chance.

    mais cela ne risque-t-il pas de me poser des soucis par la suite ?
    En tout cas, ceci ne risque pas de déclencher le reformatage de ton disque dur

  5. #5
    Membre averti
    Homme Profil pro
    Buisint
    Inscrit en
    Septembre 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Buisint

    Informations forums :
    Inscription : Septembre 2008
    Messages : 220
    Points : 438
    Points
    438
    Par défaut
    Bonjour Claude,

    Content que tu sois content que mon pied aille mieux...

    Cependant, j'ai marché sur une autre épine depuis : il semblerait que selon l'ordre des lignes à afficher dans mon état, Access choisisse de faire n'importe quoi... ou pas.
    Je m'en vais donc de ce pas boitillant clore cette discussion et en ouvrir une autre.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 05/09/2014, 16h02
  2. [AC-2007] Afficher des images dans un état en fonction d'un champ
    Par Gostringer dans le forum IHM
    Réponses: 13
    Dernier message: 20/05/2014, 13h43
  3. [AC-2007] Cadre de hauteur fixe de la section détail d'un état
    Par billybob2 dans le forum IHM
    Réponses: 3
    Dernier message: 21/10/2010, 10h02
  4. Réponses: 3
    Dernier message: 10/01/2008, 22h09
  5. un champ variable dans un état
    Par gastoncs dans le forum IHM
    Réponses: 4
    Dernier message: 25/10/2007, 14h07

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