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

Discussion :

QTableWidget non éditable, non sélectionnable, sans événement

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 112
    Par défaut QTableWidget non éditable, non sélectionnable, sans événement
    Salut à tous !

    J'aurai besoin d'avoir un affichage graphique sous forme de tableau. J'ai trouvé QTableWidget mais le problème c'est que c'est un tableau à la Excel, et non pas un simple partitionnement des données à afficher, comme dans un tableau HTML.

    Ce tableau ne me sert que d'affichage, j'ai pas besoin d'éditer, de sélectionner, de griser les cases, ni même de faire une sélection case par case.

    Je voudrais faire un tableau dont on pourrait sélectionner les lignes (facultatif) un peu comme la liste des téléchargements en cours d'emule :p, mais comment ?

    De plus j'ai aucun évènement à gérer sur le contenu du tableau. Pas de KeyEvent, MouseEvent, etc.

    La seule chose, il faut que je puisse rajouter une ligne à chaque fois qu'un signal est émis.

    Merci à tous !

  2. #2
    Membre éclairé
    Inscrit en
    Mars 2011
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 50
    Par défaut
    hello

    Pour la sélection tu as selectionBehavior (http://qt.developpez.com/doc/latest/...nbehavior-prop) qui te propose une sélection par ligne.

    Pour le graphisme dans le designer tu as verticalHeaderVisible et pareil pour horizontal qui les enlèves ou les ajoutes après c'est des widgets que tu mets a l'intérieur tu peux faire ce que tu veux avec

    j'espère t'avoir aidé

    bonne chance

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 112
    Par défaut
    Tu as répondu à 99% de ma question one-shot !
    Une ptite dernière pour la route, ce que tu m'as donné ça permet aussi d'éviter le grisage d'une des cellule lorsqu'on clique dessus ?

    Merci

  4. #4
    Membre éclairé
    Inscrit en
    Mars 2011
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 50
    Par défaut
    c'est cool si ça t'a aidé

    sinon je comprends pas ce que tu cherche a faire changer la couleur de sélection ? ou faire que les lignes ne soient pas sélectionnable ?

    pour le changement de couleur fait le en stylesheed avec un truc du genre selection-background-color: green

    bref j'espère que ca va t'aider

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 112
    Par défaut
    Oui voilà, les lignes n'ont pas besoin d'être sélectionnables. Ce tableau ne sert qu'à faire des affichages rien de plus. Or QTableWidget propose par défaut une interface pour faire un tableau à la excel x).

    Affaire classée! Merci

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 112
    Par défaut
    Petit détail pour ceux que ça intéresse, voici des fonctions utiles pour faire ce que je voulais.

    Empèche que les cases soient éditables.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    centralWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
    Les champs ne sont plus "focusable". Cela retire le rectangle gris dessiné en pointillés sur la case.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    centralWidget->setFocusPolicy(Qt::NoFocus);
    Les champs ne sont plus sélectionnables. Cela retire la couleur de fond lorsqu'on clique sur un champ, ainsi que tout type de sélections comme sélection par ligne, par colonne, etc.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    centralWidget->setSelectionMode(QAbstractItemView::NoSelection);
    Cache les labels de début de ligne, qui par défaut contiennent des nombres croissant commençants à 1.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    centralWidget->verticalHeader()->hide();
    Voili voilou! En espérant que ces réponses aideront certains !

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

Discussions similaires

  1. [WD-2007] Sélectionner et copier seulement le texte non caché (avec ou sans VBA)
    Par mouuuton dans le forum VBA Word
    Réponses: 2
    Dernier message: 25/09/2014, 10h43
  2. évènement sur un tag (GtkTextTag) dans un GtkTextBuffer non-éditable
    Par basile.starynkevitch dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 13/03/2011, 14h46
  3. [Swing / JTable] Rendre les cellules d'un JTable non éditables
    Par Jérôme_20 dans le forum Composants
    Réponses: 20
    Dernier message: 10/02/2011, 10h32
  4. Réponses: 1
    Dernier message: 24/11/2006, 16h15
  5. [JTree] Récupérer le noeud sélectionné, sans événement
    Par Bobsinglar dans le forum Composants
    Réponses: 4
    Dernier message: 26/05/2005, 18h06

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