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 :

Accélerer l'affichage d'un QTableWidget

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Avatar de katanaenmousse
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 220
    Par défaut Accélerer l'affichage d'un QTableWidget
    Bonjour,

    je viens de commencer à essayer QTableWidget pour créer des tableaux afin d'afficher des résultats.

    Je trouve l'affichage un peu lent, mais je ne dois pas bien gérer le code je pense.

    Donc en fait pour afficher un tableau qui a plus de 2000 lignes, j'utilise un QTableWidget avec aucune ligne au départ car je ne connais pas le nombre de lignes à afficher (ce nombre varie et je ne veux pas de lignes vides).

    Donc je créé une boucle for dans laquelle je fais ceci :

    1. j'ajoute une ligne dans le QTableWidget avec insertRow().
    2. je rempli chaque cellule de la ligne en faisant à chaque fois :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    item = new QTableWidgetItem();
    TableauResultats->setItem(x,y,item); // TableauResultats est mon QTableWidget
    item->setText(ligne.cellule);
    Puis je refais ces deux étapes jusqu'a la fin de la boucle for.

    Tout ça est un peu long en terme exécution du programme.

    N' y a t il pas une solution pour accélérer cela et en même temps simplifier le code ?

    Merci

  2. #2
    Membre confirmé
    Avatar de katanaenmousse
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 220
    Par défaut
    Bon en fait j'ai résolu mon problème.

    Pour explications, ce qui ralenti l'affichage s'est d'inserer une nouvelle ligne à chaque fois.

    Donc pour éviter cela, je mesure le nombre de données à afficher avant et je dimensionne mon tableau en conséquence en 1 seule fois en faisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TableauResultats->setRowCount(Nombredelignemaxi);
    Voila c'était facile en faite

    Merci quand même et bon courage à tous

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/08/2014, 18h00
  2. Accélerer l'affichage d'un état
    Par nbelg27 dans le forum Access
    Réponses: 3
    Dernier message: 26/01/2006, 18h11
  3. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 09h21
  4. probléme d'affichage d'une fiche
    Par sb dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 09h43
  5. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 21h00

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