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

MFC Discussion :

Tabulation dynamique (champs fixes et variables) [FAQ]


Sujet :

MFC

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut Tabulation dynamique (champs fixes et variables)
    Bonjour,
    Je d�veloppe une application MFC, un boite de dialogue contenant plusieurs champs de saisie. Ces �diteurs ont �t� d�finis dans les ressources.

    Dans certaines conditions, j'ajoute dynamiquement d'autres �diteurs � ma fen�tre.
    Le probl�me est comment g�rer la tabulation, entre les contr�les fixes et les contr�les dynamiques. pour que la naviguation se fasse correctement, en particulier dans l'ordre.
    Merci pour votre aide.

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,il faut fixer l'ordre de tabulation ( tab order ) comme suit:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    pWndSet->SetWindowPos(pWndRef,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE);
    pWnSet c'est le contr�le � inserer apres pWndRef.

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    D'apr�s ce que j'ai compris de la r�ponse, est de d�finir un ordre dans l'ajout. Est ce n'est pas compliqu� quand il s'agit d'un nombre variable est param�trable d'�diteur dans ma fen�tre de dialogue. Y a-t-il un moyen que le syst�me g�re �a de fa�on naturelle ?

  4. #4
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    Citation Envoy� par Jahjouh
    D'apr�s ce que j'ai compris de la r�ponse, est de d�finir un ordre dans l'ajout. Est ce n'est pas compliqu� quand il s'agit d'un nombre variable est param�trable d'�diteur dans ma fen�tre de dialogue. Y a-t-il un moyen que le syst�me g�re �a de fa�on naturelle ?
    D�sol� rien compris...

  5. #5
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    Je voudrais dire, fixer un ordre c'est connaitre � l'avance le nombre de contr�les qui seront affich�s dans la fen�tre. Dans mon cas, j'ai un nombre fixe de contr�les plus d'autres qui s'ajoutent dynamiquement dont le nombre est variable selon le param�trage de l'application.
    D�sol� pour m'avoir mal exprim� mon point de vue.

  6. #6
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    Je ne vois pas le probl�me, contr�le dynamique implique placement dynamique:
    ils sont dynamiques mais tu sais ou tu dois les cr�er et a la suite de quel contr�le ils doivent �tre plac�s pour l'ordre de tabulation.
    Alors rien ne t'emp�che au moment de la cr�ation de rajouter la ligne que j'ai indiqu�e, pWnSet �tant ton contr�le dynamique.

  7. #7
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    Merci.

  8. #8
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    pWndSet->SetWindowPos(pWndRef,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE);
    Il y a quelque chose que je n'ai pas comprise.
    pWndSet : repr�sente mon �cran.
    pWndRef : est ce qu'il repr�sente le controle que je viens d'ajouter ?
    0,0,0,0 ce sont les coordonn�es de mon contr�le ?
    le reste je ne le touche pas .

    Merci de me confirmer cette interpr�tation o� me renvoyer vers un endroit offrant plus de d�tail la dessus.

  9. #9
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    relis mes posts...
    Citation Envoy� par farscape
    Alors rien ne t'emp�che au moment de la cr�ation de rajouter la ligne que j'ai indiqu�e, pWnSet �tant ton contr�le dynamique.
    pWndRef c'est le contr�le apr�s lequel le contr�le dynamique va �tre ins�r� au niveau de l'ordre de tabulation.

  10. #10
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    Juste une derni�re pr�cision:
    dans :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    pWnd->SetWindowPos(ControlePrec,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE);
    est ce qu'il faut modifier les positions 0,0,0,0 � chaque fois qu'on ajoute un nouveau controle ?
    Merci.

  11. #11
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    la r�ponse est dans SWP_NOMOVE | SWP_NOSIZE.
    on indique clairement que l'on ne touche ni � l'emplacement ni a la taille.
    donc on laisse les coordonn�es a 0,0,0,0.

  12. #12
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    J'ai essay� avec mais malheureusement ne m'a pas donn� le r�sultat escompt�.
    La difficult� vient de la jonction entre les controles fixes d�finis dans les ressources et dont la tabulation a �t� r�gl� par "Cltr + D" et les controles dynamiques ajout� par le code.
    La jonction entre le dernier controle fixe et le premier controle dynamique et le dernier controle dynamique et le premier controle fixe.
    Merci.

  13. #13
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    d�sol� je ne vois toujours pas le probl�me ...
    la fonction
    CWnd::GetNextDlgTabItem
    CWnd* GetNextDlgTabItem( CWnd* pWndCtl, BOOL bPrevious = FALSE ) const;
    devrait t'aider :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    GetNextDlgTabItem(NULL);
    donne le premier contr�le dans l'ordre de tabulation..



  14. #14
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par d�faut
    J'avais utilis� cette solution, mais en vain. Du coup je m'�tais r�fugi� dans la facilit� :
    cr�er une liste de ID (statiques + dynamiques) et quand on appelle la tabulation, je demande le focus, j'identifie le contr�le et je passe le focus au suivant en une boucle ferm�e. Ce n'est pas �l�gant comme solution, mais �a me sauve.
    Merci infiniment pour toute l'aide.

Discussions similaires

  1. R�ponses: 14
    Dernier message: 24/02/2012, 17h04
  2. recuperer champs texte dans variable session via javascript
    Par richton95 dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 10/03/2006, 14h17
  3. [VB.Net] Créer dynamiquement un nom de variable
    Par chuck_m dans le forum ASP.NET
    R�ponses: 5
    Dernier message: 20/07/2005, 15h08
  4. R�cup�ration de la valeur d'un champ au nom variable
    Par Oluha dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 10/02/2005, 15h13
  5. tabulation sur champs de saisie
    Par xClyde dans le forum Flash
    R�ponses: 2
    Dernier message: 25/09/2003, 16h49

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