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 :

[WD10] Saisie en cascade dans zone répétée.


Sujet :

WinDev

  1. #1
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut [WD10] Saisie en cascade dans zone répétée.
    Bonjour.

    J'ai une zone répétée où je vais avoir un libellé et 3 champs de saisie. Pour chaque cellule de la zone j'aurai toujours 2 champs de saisie invisibles.

    Ce que j'aimerai c'est que a chaque appui de tab dans le champs de saisie il passe au champs de saisie de la cellule suiivante de la zone.

    Avez vous une solution ?

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Active la gestion du Tab uniquement sur les champs concernés.
    (case à cocher "accessible par Tab")

  3. #3
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Quand j'ai lu ton message j'ai tout recontrôlé. Seuls mes 3 champs de saisie sont 'accessibles par la touche TAB'.

    Quand je suis en saisie dans un champs la touche TAB ne me permet ^pas de passer à l'autre champs de l'autre cellule de la zone.

    Je crois que y'a pas de solution en dehors peut etre de simulation de frappe de touche ou d'execution forcée de traitement mais même là je ne vois pas comment.

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Tu peux intercepter la frappe de la touche Tab (ou une autre) et utiliser RepriseSaisie ()

  5. #5
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Voillà ce que j'ai fait. Trois procedures (pas obligé d'en avoir 3 mais c'est plus propre je trouve). Cela fonctionne avec les touches TAB et Shift-TAB mais aussi avec les touches flèches haut et bas.

    La ligne en rouge est obligatoire : c'est apparamment la seule syntaxe qui fonctionne.

    ET j'appelle la procédure Frappe_Touche() dans le code touche enfoncée de chacun de mes champs de saisie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    PROCEDURE Frappe_Touche()
    
    SELON _EVE.wParam
    	CAS VK_TAB
    		SI ToucheEnfoncée(teShift) ALORS
    			Déplacement_En_Arriere()
    		SINON
    			Déplacement_En_Avant()
    		FIN
    	CAS VK_UP
    		Déplacement_En_Arriere()
    	CAS VK_DOWN
    		Déplacement_En_Avant()
    FIN
    
    PROCEDURE Déplacement_En_Arriere()
    
    Zone est un entier
    
    Zone = ZR_Zone - 1
    SI Zone < 1 ALORS Zone = 1
    ZR_Zone = Zone
    RepriseSaisie(ZR_Zone.SAI_NUM)
    PROCEDURE Déplacement_En_Avant()
    
    Zone est un entier
    
    Zone = ZR_Zone + 1
    SI Zone > ZoneRépétéeOccurrence(ZR_Zone) ALORS Zone = ZoneRépétéeOccurrence(ZR_Zone)
    ZR_Zone = Zone
    RepriseSaisie(ZR_Zone.SAI_NUM)
    Merci encore

  6. #6
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Oui Merci guardian ! J'avais jamais trouvé le bouton maistenant je sais ou il est.

    En fait ça marche pas si bien que ça. Je viens de m'apercevoir que malgré ma similitude de traitement entre les flèches et la touche TAB, Windev ne me sélectionne pas le contenu du champs de saisie en entrée de celui ci qund j'utilise les flèches pour me déplacer !

    Mais bon, on va pas se facher pour autant ! En ce qui me concerne le sujet est clos

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Tu as vérifié tous les paramètres dans la description des champs ?

  8. #8
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Oui ça a été fait en fait j'ai l'impression que la touche gfrappée est 'éxecutée' dans le champs de saisie. Je vais essayer avec des boutons munis de touches de raccourci cela devrait aller mieux. on verra bien.

  9. #9
    Membre chevronné
    Avatar de mogwai162
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 1 860
    Points
    1 860
    Par défaut
    Je confirme, quand j'ai utilisé un bouton tout a bien, fonctionné.

    Par contre, j'ai encore un souci, dans le code d'init de la fenetre j'ai eu beau utiliser un ecranpremier, donnefocus ou encore reprisesaisie, avec au préalable la selexction de la ligne, il m'est impossible de faire en sorte que le curseur soit positionné dans le premier champs de la zone.

    C'est dommage. Si vous avez une idée, je suis preneur

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

Discussions similaires

  1. [WD16] Champ image dans zone répétée
    Par thierrybatlle dans le forum WinDev
    Réponses: 3
    Dernier message: 18/04/2011, 16h23
  2. [WD14] Probleme affichage dans Zone Répétée
    Par mero007 dans le forum WinDev
    Réponses: 21
    Dernier message: 31/07/2009, 11h28
  3. Réponses: 1
    Dernier message: 20/12/2008, 15h02
  4. [WD12] valeur dans zone répétée
    Par manonoc dans le forum WinDev
    Réponses: 1
    Dernier message: 08/12/2008, 14h19
  5. [w10] Objets dans zone répétée
    Par Wells dans le forum WinDev
    Réponses: 9
    Dernier message: 16/01/2007, 09h51

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