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

WinDev Discussion :

Problème avec les Ancrages


Sujet :

WinDev

  1. #1
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut Problème avec les Ancrages
    Bonjour à tous,
    J'ai un problème avec l'ancrage de mes champs par rapport à ma fenêtre.
    En effet, j'ai une fenêtre dont le fond est une image qui conporte des espaces dans lesquels je dois afficher les champs contenant les données.
    Le problème est que lorsque j'applique l'option "Maximiser à l'ouverture" pour que la fenêtre s'adapte automatiquement à tous les écrans, tous les champs se retrouvent décalés par rapport à l'espace qui leur est réservé. J'ai essayé toutes les options d'ancrage mais le résultat n'est toujours pas bon.
    Si vous avez une solution...

    Merci

  2. #2
    Membre éclairé
    Avatar de Narwe
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2013
    Messages : 253
    Points : 668
    Points
    668
    Par défaut
    Il y a donc une fenêtre dont la réprésentation peut être :
    <Image 1><Bouton><Image 2>

    En toute logique les ancrages suivant permette un agrandissement correct
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <Image1>..TauxAncrageDroite		= 0
    <Image1>..TauxAncrageLargeur	= hasard(0, 20)
    <Bouton>..TauxAncrageDroite		= <Image1>..TauxAncrageLargeur
    <Bouton>..TauxAncrageLargeur	= hasard(0, 20)
    <Image2>..TauxAncrageDroite		= <Image1>..TauxAncrageLargeur+<Bouton>..TauxAncrageLargeur
    <Image2>..TauxAncrageLargeur	= hasard(0, 20)
    Difficile d'être plus précis sans détail du problème (c'est-à-dire deux images (avant / après agrandissement) et les paramètrage d'ancrage des champs.

  3. #3
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    A mon avis, il y a une seule image, disons une image avec des zones claires et des zones coloriées. Et superposé avec les zones claires de cette image, en 1er plan, on a des champs textes.
    Et le besoin est de repérer comment les zones claires se déplacent quand l'image s'agrandit.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  4. #4
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Tu as bien résumé la situation. Mes champs n'arrivent pas à suivre le déplacement des zones claires et se retrouvent décalés.
    C'est ça le souci.

  5. #5
    Membre éclairé
    Avatar de Narwe
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2013
    Messages : 253
    Points : 668
    Points
    668
    Par défaut
    Citation Envoyé par tbc92 Voir le message
    A mon avis, il y a une seule image, disons une image avec des zones claires et des zones coloriées. Et superposé avec les zones claires de cette image, en 1er plan, on a des champs textes.
    Et le besoin est de repérer comment les zones claires se déplacent quand l'image s'agrandit.
    Merci de ces précisions. Je comprend mieux le problème.

    La résolution est identique si ce n'est que qu'il faut connaître les rapports de l'image.
    Prenons l'image de fond suivante :Nom : FondQuart.png
Affichages : 765
Taille : 158 octets
    Elle est composé d'un bande de 25% de large rose, suivi d'une bande de 25% de large blanche suivi d'une bande de 50% de large orange.
    Cette image est sur le fond de fenêtre, étirée.
    Si je veux un bouton qui reste dans la bande blanche, il aura un taux d'agrandissement de 25% et un décalage à droite de 25%.

    EDIT :
    Citation Envoyé par aurabarth Voir le message
    Tu as bien résumé la situation. Mes champs n'arrivent pas à suivre le déplacement des zones claires et se retrouvent décalés.
    C'est ça le souci.
    Quelle est l'image de fond utilisée ? à quel emplacement doivent se trouver et rester les boutons ?
    Ces 2 réponses me semblent indispensables pour obtenir une aide précise de la part du forum.

  6. #6
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Je me trompe peut-être mais j'ai l'impression que la même question a déjà été posée ici il y a quelques mois.
    Si je la retrouvais, je ferais un copier coller de la réponse que j'avais faite à l'époque.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  7. #7
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Salut,
    Je ne peut pas déterminer les taux de largeur pour chaque espace parce qu'il y en a plusieurs et calculer à chaque fois les largeurs et fixer moi-même les taux.
    Si on peut trouver une solution plus automatique, c'est mieux.

  8. #8
    Membre éclairé
    Avatar de Narwe
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2013
    Messages : 253
    Points : 668
    Points
    668
    Par défaut
    Le problème me semble loin d'être insurmontable mais sans information supplémentaire je ne sais pas ce que vous espèrez de la part du forum.

    Il y a donc plusieurs fonds de fenêtre possible. Combien y en a-t-il ? Est-ce de l'ordre de la dizaine, centaine, ... ou est-ce un nombre indéfini car les fonds sont définis fixé par l'utilisateur ?
    De quelle forme sont ces images ? Peut-on avoir l'image la plus simple et la plus complexe ?

    Si les images sont composées de cases dans lesquelles il faut placer les champs, peut-être que l'utilisation de ChampClone (ou ChampCree) avec un champ de type image est la solution la plus simple.

    Il faut au moins fournir un exemple du but rechercher (Il est très simple d'ajouter une image à un message sur ce forum).

    Le prochain post devrait contenir 3 images :
    - L'image de fond seule
    - L'image de la fenêtre taille réduite (avec donc les champs au bonne endroit)
    - L'image de la fenêtre agrandit (avec donc les champs au mauvais endroit) et une explication de la position souhaité des champs.

  9. #9
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Une question avant de proposer éventuellement une solution.
    L'image est une image de fond pour la fenêtre. Pour les images de fond, si je me souviens bien, il y a différents choix possibles pour gérer les changement de taille ( mode 9 images, homothétique, étiré ou des trucs comme ça).
    Quel est le paramétrage dans ton cas ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  10. #10
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Salut à tous,
    Merci pour vos réponses. Je vous envoie donc quelques captures pour mieux vous éclairer.

    - L'image 1 est l'image qui sert donc de fond d'écran

    Pièce jointe 254187

    L'image 2 est l'affichage que je souhaite obtenir quelque soit la taille de l'écran de l'utilisateur. Les noms bien alignés dans leurs espaces respectifs et les boutons également. Comme ici le bouton transparent sur le texte Jeu 1.

    Pièce jointe 254189


    L'image 3 est le resultat que j'obtiens sur mon écran de 17pouces (la fenêtre réelle est en taille de 19pouces). Ici j'ai appliqué l'option Maximiser à l'ouverture.

    Pièce jointe 254192


    Voilà, j'espère que vous pourrez mieux m'aider à présent.
    Merci

  11. #11
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Tes différentes pièces jointes ne s'affichent pas ... mais je ne pense pas que ça fasse avancer le débat.

    Tu dis que la fenêtre est maximisée à l'ouverture .. ok, mais ça ne sert à rien.

    Ce qui est important,c'est comment tu as paramétré ton image. Ce qu'il y a dans l'onglet IMAGE de la description de la fenêtre :
    - Est-ce que l'option 9 images est activée ?
    - Et dans la combo 'Mode d'affichage', Quelle est l'option sélectionnée : homothétique, homothétique centré sans agrandissement , étiré etc etc.

    Si le mode 9 images est activé, à mon avis, il n'y a pas de solution.
    Et pour la combo mode d'affichage, pour chaque option proposée, il y aura un algorithme différent.

    Si tu avais donné les bonnes informations dès ton premier message, il y a quelques mois, tu aurais eu la réponse le jour même. Mais tu ne donnes pas les informations qui permettent de t'aider.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  12. #12
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Désolé tbc92, j'ai créé cette discussion il y a à peine 3 jours. Tu te trompes de discussion certainement.
    Pour les images, il suffit de cliquer sur les pièces jointes et tu verras.

  13. #13
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Il suffit de cliquer sur les pièces jointes ?
    Comme dit précédemment, en cliquant sur les pièces jointes, on a le message : 'lien non valide'.

    Et comme dit précédemment : l'image elle-même, ça ne sert pas çà grand chose. Ce que le programme buggé donne sur ton écran, non plus.
    Ce qu'il aurait fallu que tu dises, c'est si tu as activé le mode 9 images ou non, et si tu as paramétré homothétique, ou étiré, ou ... ou ...
    Pour chaque option , il y a 5 ou 6 lignes de code à trouver, on ne va pas chercher pour toi ce code pour chaque cas de figure, parce que tu ne veux pas dire lequel tu as sélectionné.


    Voici quand même le code que j'essaierais pour le cas le plus simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    procedure  deplace_champ (mon_champ est un champ)
     
    // Procédure qui va déplacer le champ, et faire en sorte que le coin en haut à gauche se déplace 'proportionnellement' à l'image de fond.
    kx, ky est un entier 
    ky = 40   // Certainement A adapter un peu parce    mafenetre..hauteur  ou mafenetre..hauteurInitiale prennent en compte le bandeau en haut de la fenetre, le cadre, la barre de message ... il faut donc adapter ce nombre 40
    kx = 8 // Idem , mais ici, on n'a que les bords droits et gauche à prendre en compte.
     
    monchamp..X = mon_champ..Xinitial * (mafenetre..largeur-kx) / (mafenetre..largeurInitiale-kx)
    monchamp..Y = mon_champ..Yinitial * (mafenetre..hauteur-ky) / (mafenetre..hauteurInitiale-ky)
    Il faut appeler cette procédure pour chaque champ concerné. Et il faut l'appeler à chaque changement de taille de la fenêtre.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  14. #14
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Désolé, je ne refuse pas de donner des informations...

    Pour ma fenêtre, j'ai désactivé le mode 9 images et j'ai choisi le mode d'affichage Etiré et j'ai Maximisé à l'ouverture.
    Pour les champs, après plusieurs combinaisons d'ancrage infructueuses, j'ai choisi Aucun ancrage.

    Si tu as besoin de plus d'infos stp n'hésites pas
    Merci

  15. #15
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Ca tombe bien, le code que j'avais posté correspond à la configuration que tu donnes.

    Juste par curiosité, est-ce que ce code fonctionne et donne le résultat voulu ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  16. #16
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 173
    Points : 83
    Points
    83
    Par défaut
    Merci pour le code mais il ne donne pas exactement le résultat attendu à savoir retrouver chaque champ bien positionné dans son espace.
    Le code qu tu as donné malgré mes ajustements (kx et ky) se rapproche du résultat mais je constate que le bouton garde sa taille initiale et reste encore décalé.

  17. #17
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Pour la taille, on peut facilement adapter la procédure en ajoutant ces 2 lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    monchamp..Largeur = mon_champ..Largeurinitiale * (mafenetre..Largeur-kx) / (mafenetre..LargeurInitiale-kx)
    monchamp..Hauteur = mon_champ..Hauteurinitiale * (mafenetre..hauteur-ky) / (mafenetre..hauteurInitiale-ky)
    Ensuite, s'il y a quelques pixels de décalage ici ou là, il faut chercher pourquoi.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

Discussions similaires

  1. Problème avec les fonctions
    Par jvachez dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/01/2004, 12h06
  2. [Postgresql]Problème avec les fonctions ...
    Par fet dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/10/2003, 09h04
  3. Problème avec les apostrophes
    Par misterbillyboy dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/07/2003, 16h39
  4. Problème avec les fichiers .JPG
    Par cprogil dans le forum Langage
    Réponses: 5
    Dernier message: 10/06/2003, 15h44
  5. []Problème avec les formulaires Outlook
    Par davidinfo dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

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