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

Composants VCL Delphi Discussion :

[TComboBox] Clic de souris


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut [TComboBox] Clic de souris
    Bonjour

    Je pensais avoir trouvé la solution au dernier moment, mais non... pas si simple.

    En gros, j'ai une Forme principale comportant un RichEdit.

    J'ai aussi par dessus cette Forme principale une seconde forme comportant une ComboBox.

    Les deux formes sont visibles en même temps.

    Je choisis depuis ma seconde forme un item de cette combo qui pointe une action d'écriture dans le RichEdit de ma Forme principale.

    Jusque là, rien d'extraordinaire, après avoir choisi un item de la Combo en question, cette dernière montre l'item cliqué, me suivez-vous toujours ?

    D'ailleurs je suis obligé d'utiliser une procédure "relais" afin que le "clic" directo dans l'item de la Combo soit pris en compte !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TSecondeForme.ComboEnter(Sender: TObject);
    begin
      beep;
      Truc(Sender);
    end;
    Justement, à ce moment précis, si je reclique directement sur cet item sans toucher au bouton de cette combo, hé bien le "clic" gauche souris n'est pas détecté !

    Je viens de me rendre compte qu'il suffisait simplement afin que cela fonctionne ; de cliquer ailleurs sur la seconde forme.

    Autrement dit :
    je choisis/clique un item en seconde forme qui écrit dans le RichEdit de la forme principale.
    Si je reclique directement dans la combo, hé bien le clic n'est pas détecté.

    Pour que ça fonctionne, il faut que :
    je choisis/clique un item en seconde forme qui inscrit dans le RichEdit de la forme principale.
    Je dois cliquer une fois n'importe oú sur ma seconde forme et si je reclique directement dans la combo, là c'est impec !

    Oui mais comment coder afin d'éviter ce "clic" dans ma seconde forme.

    J'ai tenté de simuler un clic dans cette seconde forme, mais ça marche pas.

    Encore une histoire qui ne tombe que sur moi

    Merci de vos idées.

  2. #2
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 146
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 146
    Par défaut
    Salut !

    J'ai du mal à te suivre... À te lire, on dirait que ta combo ne se referme pas, c'est ça ? :
    si je reclique directement sur cet item sans toucher au bouton de cette combo
    Kess tu nous as encore inventé, là,

    (Speede-toi de répondre, je vais pas rester longtemps...)
    --
    jp

  3. #3
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Hello jp

    nan, dans un premier temps j'ai choisi un item = point final pour la manip.

    Ensuite sur cet item visible (Combo refermée...)

    Si je clic... hé bien ensuite le "beep" n'est pas appelé.
    Sauf si... je reclique ailleurs !

    Tout est là

    @+

  4. #4
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 146
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 146
    Par défaut
    Yep, JP

    Je comprends mieux !
    En fait tu veux réappliquer ce que tu viens de choisir, c'est ça ?

    Mais je sais pas quoi te dire... J'ai pas trop le temps, là, si je l'avais je chercherais peut-être avec l'ajout d'un bouton "Appliquer le style" qui serait cliqué automatiquement sur le OnChange, pourquoi pas ?

    À bientôt (je plie, là...)
    --
    jp

  5. #5
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Yep jp,

    En fait tu veux réappliquer ce que tu viens de choisir, c'est ça ?
    Oui

    Tout simplement de chez simplement.

    Merci d'avoir défriché, car je suis une terreur

    @ plus tard

  6. #6
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Je dois ajouter que la ColorComboBox possède meilleur caractère que la ComboBox.

    Il semblerait qu'entre les deux une différence de comportement existe.

    En effet le résultat entre ces deux sortes de compos pour le même clic sur le choix déjà effectué, soit différent en comportement.

    Mais de toute façon, le ColorComboBox n'est pas utilisable pour le problème en question.

    Pour les développeurs qui prennent le train en route, je cherche simplement à obtenir un "beep" à chaque clic de souris sir l'item visible (déjà choisie) d'une Combo.
    Je reprécise : Combo refermée !

    Si seulement la Combo avait le même comportement d'un Edit, qui à chaque clic dessus fait "beep" !

    Mais c'est interressant, je viens de regarder ça :
    Si vous mettez en OnClic d'un Edit un "beep", ça fait "beep" à chaque clic de souris dessus.

    Tandis que si vous mettez en OnEnter d'un Edit un "beep", hé bien là nous revenons exactement au point que je soulève sur le comportement de la Combo. Pour faite le "beep" à tous les coups de souris, faut cliquer à côté pour emmener le focus ailleurs...

    Curieux non ?

  7. #7
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 146
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 146
    Par défaut
    Yep !
    Alors, puisque c'est remonté, je persiste et signe :
    Citation Envoyé par Jipété Voir le message
    (...) je chercherais peut-être avec l'ajout d'un bouton "Appliquer le style" qui serait cliqué automatiquement sur le OnChange, pourquoi pas ?
    Si on clique dans la zone d'édition où se trouve un texte choisi lors d'un DropDown de ta Combo, tu veux re-exécuter l'action du dit choix, c'est bien ça ?
    Ben plutôt que de chercher un truc tarabiscoté et compliqué (à moins que tu tentes un nouveau défi, ?), puisque de toute façon il va falloir cliquer, clique donc sur un bouton ! Enabled ou pas en fonction du contenu de la zone de texte.

    Tchô,
    --
    jp

  8. #8
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut Un clic sur le champ déjà sélectionné en Combo et c'est tout
    Yep jp

    Oui oui, tu as très bien saisi mon but ; de recliquer directo dans la zone déjà sélectionnée du combo et surtout sans recliquer sur le bouton du déroulement de liste.

    Merci de m'avoir encore recommandé d'ajouter un bouton, mais justement cela n'est pas trop "top". C'est justement pourquoi je recherche un moyen plus direct et ergonomique, car si j'ai bien saisi ta réponse, cela demandera à l'utilisateur de recliquer sur cet autre bouton à côté de cette Combo.

    Sans parler qu'il y en aura plusieurs de ces Combos

    Tu devrais commencer à me connaître, j'ai souvent des idées un peu tordues, mais sous un autre angle ; elles paraissent et se révèlent bien rectilignes

    @+

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

Discussions similaires

  1. [Debutant] Menu sur clic de souris
    Par chabannou dans le forum Windows
    Réponses: 8
    Dernier message: 02/04/2005, 01h52
  2. Réponses: 8
    Dernier message: 14/03/2005, 21h43
  3. Emuler et detecter un clic de souris (G, D, mollette)
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 19/02/2005, 17h25
  4. Réponses: 2
    Dernier message: 12/07/2004, 11h43
  5. Selection par clic de souris
    Par bilbonec dans le forum OpenGL
    Réponses: 7
    Dernier message: 16/04/2004, 00h25

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