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

Qt Discussion :

[Qt] ListView avec menu contextuel ?


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 93
    Par défaut [Qt] ListView avec menu contextuel ?
    Bonjour,

    Alors voilà je m'intéresse de près à QT. J'aimerais en fait afficher une liste de mp3 (par exemple) chargés à partir d'une base de donnée. Bon jusque là ça devrait être relativement simple.

    Mais, de plus, j'aimerais que l'utilisateur puisse interagir avec les éléments de la liste donc évidemment double clic mais surtout clic droit afin d'afficher un menu contextuel qui va lui permettre de lire la musique, de supprimer le fichier etc etc.

    Ca devrait être possible à faire non ? (Et si oui, j'aimerais deux-trois mots-clés qui me permettraient de trouver la doc nécessaire ^^)

    Merci d'avance !

  2. #2
    Membre confirmé
    Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 93
    Par défaut
    Pas très fréquenté mon petit post :'(.

  3. #3
    Membre chevronné Avatar de cboudy
    Profil pro
    Ingénieur informatique industrielle
    Inscrit en
    Avril 2006
    Messages
    407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur informatique industrielle
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 407
    Par défaut
    il faut que ton appli intercepte le signal contextMenuRequested de ton QListView (automatiquement appelé quand tu cliques droit dessus) et l'associer à une fonction qui crée un QPopupMenu l'affiche et traite la réponse

  4. #4
    Membre confirmé
    Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 93
    Par défaut
    Pour une réponse ! Merci ! J'aurai pas pu espérer mieux (à un moment j'ai même cru que c'était trivial ou que j'étais un martien de vouloir faire ça) !!

    Ok, donc je comprends ce qu'il faut faire me reste qu'une question :

    Lorsque je clic droit dessus, l'entrée est auto-selectionnée et donc j'aimerais savoir si je peux savoir quelle entrée est selectionnée (histoire de pouvoir récupérer l'info liée à la cellule correcte)...

    quelques candidats :
    virtual void selectionChanged ( const QItemSelection & selected, const QItemSelection & deselected )
    virtual void currentChanged ( const QModelIndex & current, const QModelIndex & previous )
    QModelIndex currentIndex () const
    autre ?
    ...

  5. #5
    Membre chevronné Avatar de cboudy
    Profil pro
    Ingénieur informatique industrielle
    Inscrit en
    Avril 2006
    Messages
    407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur informatique industrielle
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 407
    Par défaut
    il faut juste récupérer la propriété currentItem() du QListView en question

  6. #6
    Membre confirmé
    Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 93
    Par défaut
    Citation Envoyé par cboudy
    il faut juste récupérer la propriété currentItem() du QListView en question
    http://qt.developpez.com/doc/4.1/qlistview/

    => je ne vois pas de fonction "currentItem()" parmi les fonctions publiques du QListView

    En gros, j'aurais aimé que tu me pointes exactement où c'est marqué dans la doc... (parce que je suis en train de faire les spécifications avant de me lancer dans le code donc si je suis sûr que c'est faisable et comme je veux, y'a aucun prob ).

    P.S.: J'utilise Qt 4.1... et apparemment currentItem() n'existe plus dans la 4.1 ( http://qt.developpez.com/doc/3.3/qlistview/#currentitem )

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

Discussions similaires

  1. ListView et menu contextuel
    Par encolie dans le forum Composants graphiques
    Réponses: 0
    Dernier message: 15/04/2011, 13h14
  2. Depuis quel ListView mon menu contextuel est il appelé ?
    Par kineton dans le forum Windows Forms
    Réponses: 6
    Dernier message: 20/12/2010, 17h59
  3. Menu contextuel avec les API
    Par guen dans le forum Access
    Réponses: 6
    Dernier message: 14/09/2006, 23h42
  4. Ouvrir avec du menu contextuel
    Par Furius dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 27/08/2005, 16h03

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