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 :

Garder le focus sur une CListCtrl


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut Garder le focus sur une CListCtrl

    Je rencontre un problème dans mon application.
    J'ai mis en place un CListCtrl et des boutons "modifier" et "supprimer". Le problème, c'est que quand je sélectionne une ligne et que je clique ensuite sur un des deux boutons, ma CListCtrl perd le focus (ça c'est normal je pense) mais par la même occasion, il perd la sélection que j'ai faite.

    Est-il possible de garder la sélection lorsque je clique sur un bouton ?

  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,
    tu as essayé de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MyListCtrl.SetFocus();
    dans le message de click du bouton ?

  3. #3
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut
    Merci pour ta réponse farscape.
    J'ai essayé de faire ce que tu m'a indiqué. Cela fonctionne lorsque j'intercepte le clic simple sur le bouton "modifier".
    Par contre, pour le bouton "supprimer", j'avais géré l'évènement double click pour plus de sécurité. Mais dans ce cas, ça ne marche pas, même en rajoutant .SetFocus() dans la methode de gestion du clic simple.

    Alors deux solutions s'offrent à moi :
    1. Trouver comment faire pour gérer le double clic sur le bouton supprimer
    2. Gérer uniquement le clic simple sur le bouton supprimer (et dans ce cas il faut ajouter un message de confirmation du genre oui/non, mais je ne sais pas faire ...)

  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
    pourquoi ça ne fonctionne pas?
    quand tu supprimes la ligne il faut mémoriser l'indice de la ligne en cours de sélection.
    puis sélectionner la ligne suivante.
    http://cpp.developpez.com/faq/vc/ind...lEnsureVisible
    supprimer la ligne dont l'indice est mémorisé.
    redonner le focus a la listctrl.

  5. #5
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut
    Justement, c'est pour obtenir l'indice de la ligne sélectionnée que j'ai un problème. Lorsque je le fait sur un simple clic, j'arrive bien à récupérer la ligne sélectionnée avec .GetFirstSelectedItemPosition(); et à la supprimer.
    Par contre, je n'arrive pas à la récupérer sur un double clic.

    Sinon, est-ce que ce ne serait pas plus simple d'afficher une boite de confirmation oui/non sur un simple clic sur le bouton supprimer ?

  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
    on peut voir le code ?

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

Discussions similaires

  1. garder le focus sur une option selectionnée d'un select
    Par sajodia dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 01/12/2010, 15h26
  2. Garder le focus sur une popup
    Par identifiant_bidon dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/11/2007, 17h12
  3. focus sur une input text
    Par mic79 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2005, 18h06
  4. Focus sur une cellule spécifique d'un DBGrid
    Par danbern dans le forum Bases de données
    Réponses: 4
    Dernier message: 25/11/2004, 19h04
  5. Focus sur une application Windows
    Par mixi dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/10/2004, 19h57

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