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 :

Paramétrage application : Replacement des champs [WD19]


Sujet :

WinDev

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 169
    Points : 47
    Points
    47
    Par défaut Paramétrage application : Replacement des champs
    Bonjour à tous,

    Je voulais savoir, dans le cadre d'une application avec du paramétrage (suppression d'un ou plusieurs champs en fonction du param), comment faites vous pour replacer vos champs en fonction de ce paramétrage ?

    Surtout dans le cas ou la fenêtre comporte une dizaine de champs et que tous sont susceptibles d'être mis en visible ou en invisible.

    Si on les replace pas, ça fait pas super, une fiche avec des trous... Mais pour le replacement, cela semple complexe comme opération par programmation. Je me dis qu'il y a peut être des façon plus simple...

    Des idées ? Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Si tu n'as pas beaucoup de champs à gérer, tu peux te servir des plans

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 169
    Points : 47
    Points
    47
    Par défaut
    Merci pour ta réponse.

    Mais si j'ai 7 ou 8 champs paramétrables, cela fait énormément de plans à créer pour que toutes les possibilités soient prises en compte. Cela semble compliqué, non ?

  4. #4
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    bonjour

    par programmation? tu les places là où tu veux.

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 169
    Points : 47
    Points
    47
    Par défaut
    Bonjour,

    fffttt, par programmation tu fais comment ? Car en fonction des champs qui doivent apparaître, il faut sélectionner le champ et le replacer.

    Comment faire ? La position sera différente en fonction de chaque paramétrage. Ca me paraît dur à réaliser...

  6. #6
    Invité
    Invité(e)
    Par défaut
    si tu comptes faire par programmation, tu peux aussi te servir d'une variable locale/globale (à toi de voir) de type tableau à 2 dimensions à valeurs entiers, que tu construiras de la manière suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    tabPosition est un tableau de 8 par 2 entier
    tabPosition[1][1]=0
    tabPosition[1][2]=0
     
    tabPosition[2][1]=10
    tabPosition[2][2]=0
     
    tabPosition[3][1]=0
    tabPosition[3][2]=10
     
    tabPosition[4][1]=10
    tabPosition[4][2]=10
     
    ...
    Tu instancies une variable globale de type entier (que je vais nommer global_indiceChamp) qui aura pour valeur initiale 1.
    Ainsi, si ton premier SAI_CHAMP1 doit être affiché, tu fais comme cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SAI_CHAMP1..X=tabPosition[global_indiceChamp][1]
    SAI_CHAMP1..Y=tabPosition[global_indiceChamp][2]
    global_indiceChamp=global_indiceChamp+1
    Si ton champ SAI_CHAMP2 doit être caché mais pas SAI_CHAMP3, tu le places ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SAI_CHAMP3..X=tabPosition[global_indiceChamp][1]
    SAI_CHAMP3..Y=tabPosition[global_indiceChamp][2]
    global_indiceChamp=global_indiceChamp+1
    Et ainsi de suite.

  7. #7
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par Phoenix311 Voir le message
    Bonjour,

    fffttt, par programmation tu fais comment ? Car en fonction des champs qui doivent apparaître, il faut sélectionner le champ et le replacer.

    Comment faire ? La position sera différente en fonction de chaque paramétrage. Ca me paraît dur à réaliser...
    du genre de ce que propose romulus001 ci-dessous.
    l'éventuel inconvénient sera le côté linéaire des champs.


    ou alors tu proposes un programme qui permettra à un utilisateur avancé de positionner ces champs par DnD.
    Plus balaise, mais faisable.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par fffttt Voir le message
    l'éventuel inconvénient sera le côté linéaire des champs.
    oui et non, ça dépend avant tout de comment l'écran doit se présenter, s'il veut faire apparaitre les champs SAI_DATE_DEBUT et SAI_DATE_FIN, et que sur chaque ligne, il doit y avoir au plus 2 champs, il fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    si EstPair(global_indiceChamp) Alors
    global_indiceChamp=global_indiceChamp+1
    Fin
     
    SAI_DATE_DEBUT..X=tabPosition[global_indiceChamp][1]
    SAI_DATE_DEBUT..Y=tabPosition[global_indiceChamp][2]
    global_indiceChamp=global_indiceChamp+1
     
    SAI_DATE_FIN..X=tabPosition[global_indiceChamp][1]
    SAI_DATE_FIN..Y=tabPosition[global_indiceChamp][2]
    global_indiceChamp=global_indiceChamp+1

  9. #9
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 169
    Points : 47
    Points
    47
    Par défaut
    Bonjour

    Merci pour vos réponses. Je pense que je vais faire comme tu le détaille Romulus. Ca me paraît pas mal comme solution.

    Merci à vous deux !

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 19/10/2007, 14h02
  2. Une application des champs de Markov ?
    Par progfou dans le forum Traitement d'images
    Réponses: 4
    Dernier message: 23/11/2006, 17h32
  3. [langage] Comment rajouter des champs dans une liste
    Par toto_titi dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2003, 14h09
  4. Ordre des champs dans une table
    Par patapetz dans le forum Outils
    Réponses: 5
    Dernier message: 30/07/2003, 06h53
  5. Taille des champs proportionnelle...
    Par Depteam1 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 09/08/2002, 11h48

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