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 :

[WD12] Savoir si une combo est déroulée


Sujet :

WinDev

  1. #1
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut [WD12] Savoir si une combo est déroulée
    Voilà tout est dans le titre, je ne trouve pas dans l'aide de propriété indiquant qu'une combo est déroulée ou repliée donc si vous avez une idée je suis preneur.

    Merci d'avance

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 328
    Points : 3 841
    Points
    3 841
    Par défaut
    Bonjour,

    Tu pourrais passer par une petite variable qui serait passée à 1 sur le clic et à 0 lors de la sélection et/ou de la sortie du champ.

    Pour ma culture personnelle, ce serait pour quelle utilisation ?

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut
    C'est compliqué, en fait dans mon application, on doit pouvoir naviguer entre les divers champs à l'aide des boutons haut et bas (comme avec shift+tab et tab si tu veux). Le problème c'est que, lorsqu'on prend le focus sur une combobox, si on fait haut ou bas ça la déroule et ensuite ça navigue entre les diverses options à l'intérieur. Moi j'aimerais bien que ça fasse comme décrit plus haut donc voyager entre les champs, mais pas exemple si on appuye sur entrée ou espace ça déroule la combo, ensuite avec haut/bas on fait notre choix dedans, on réappuye sur entrée/espace et on reprend le voyage entre les champs avec haut/bas.

    Tu vois ce que je veux dire ou je m(t)'embrouille ?

  4. #4
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 328
    Points : 3 841
    Points
    3 841
    Par défaut
    Non, je vois mais c'est complexe en effet comme utilisation.

    Eventuellement, tu pourrais capter la toucheenfoncée(fleche haut et bas) et si la combo n'est pas déroulée alors tu passes au champ suivant.

    Toujours pour ma culture , pourquoi ne pas utiliser les TAB ?

  5. #5
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut
    Ca faut demander à mon chef ^^ je ne suis qu'un pauvre développeur bête et discipliné.

    Nan mais c'est parce que sur l'ancienne version du logiciel c'était sous DOS, sans souris, du coup les clients ont leurs habitudes et faut qu'ils puissent utiliser le logiciel avec leurs réflexes d'avant. Et c'est vrai que tout faire au clavier ça permet d'aller un peu plus vite, et HAUT/BAS c'est plus rapide que TAB et SHIFT-TAB (et d'ailleurs beaucoup d'utilisateurs non-expérimentés connaissent même pas l'utilisation de TAB).

  6. #6
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 328
    Points : 3 841
    Points
    3 841
    Par défaut
    ^^ les users ne sont pas forcément réfractaires au TAB et tu le dis toi-même, beaucoup ne sont pas au courant de cetta manipulation.

    Niveau méthode, à part celle que je t'ai proposée avec la capture le toucheenfoncée(), je ne vois pas trop.

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Ce n'est pas complètement ce que vous cherchez mais depuis Windev 14, les fonctions ComboOuvre/ComboFerme sont disponibles pour dérouler/enrouler par programmation.

  8. #8
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 328
    Points : 3 841
    Points
    3 841
    Par défaut
    Elles sont également présentes en WD12. Je n'y avait pas fait attention.

  9. #9
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut
    Oui, je sais me servir de ComboOuvre et ComboFerme mais elles ne permettent pas de savoir si la Combo est déroulée ou pas mais juste de la dérouler/enrouler. Bah c'est pas grave je passerai par un booléen que je changerai moi-même.

  10. #10
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Bon c'est possible avec les évènement/messages windows :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendMessage(Handle(COMBO_Combo1), 0x157, 0, 0)
    Renvoie 1 ou 0.

    0x157 correspond à une constante documentée ici : http://msdn.microsoft.com/en-us/libr...49(VS.85).aspx

    De la même manière il doit être possible de déclarer un évènement windev sur la constante correspondant à l'enroulement/déroulement de combo.

  11. #11
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut
    Wow, merci ça marche nikel. Comment t'as trouvé ça ? Tu en avais déja eu besoin avant ? C'est bizarre qu'il n'y ait pas une simple propriété pour savoir si c'est déroulé ou pas non ?

  12. #12
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Windows expose un nombre impressionnant d'évènements et de propriétés à travers des APIs ou des messages windows (le fameux SendMessage).

    Je n'avais jamais utilisé celle ci mais j'étais persuadé que je trouverais la constante associée à l'état de la combo dans la msdn.

  13. #13
    Membre habitué
    Inscrit en
    Juillet 2007
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 433
    Points : 130
    Points
    130
    Par défaut
    Okay et bien merci d'avoir cherché pour moi je pense jamais à aller voir dans l'API, surtout quand je développe en Windev qui a tendance à nous mâcher le travail je sais c'est pas très professionnel Encore merci à toi !

  14. #14
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Y'a pas de mal.

    Bonne continuation.

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

Discussions similaires

  1. Savoir si une string est un nombre
    Par SteelBox dans le forum SL & STL
    Réponses: 10
    Dernier message: 14/02/2005, 19h59
  2. Savoir quand une hotkey est relachée
    Par kriterium dans le forum Composants VCL
    Réponses: 2
    Dernier message: 24/07/2004, 14h44
  3. Savoir si une connection est établie sur un port
    Par Malone dans le forum Web & réseau
    Réponses: 3
    Dernier message: 06/12/2003, 08h22
  4. Comment savoir qu'une fonction est standard ?
    Par D[r]eadLock dans le forum C
    Réponses: 5
    Dernier message: 24/03/2003, 14h42
  5. [VB6] [Impression] Savoir si une imprimante est installée
    Par Norm59ttp dans le forum Installation, Déploiement et Sécurité
    Réponses: 2
    Dernier message: 19/12/2002, 09h29

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