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

Tkinter Python Discussion :

DeleteColumn Problème ne supprime pas toutes les colonnes


Sujet :

Tkinter Python

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut DeleteColumn Problème ne supprime pas toutes les colonnes
    Bonjour à tous,

    Quand j'esseye de supprimer mes colonnes, la fonction me retourne False.

    Je ne comprends pas pourquoi.

    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for i in range(0,self.lc3.GetColumnCount()):
                print self.lc3.DeleteColumn(i)

    D'avance Merci pour votre aide.

    Bonne soirée

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 442
    Points : 37 034
    Points
    37 034
    Par défaut
    Salut,

    Citation Envoyé par Guispeed4262 Voir le message
    Quand j'esseye de supprimer mes colonnes, la fonction me retourne False.

    Je ne comprends pas pourquoi.
    Le code que vous postez ne permet pas de savoir ce que peut bien être "lc3".
    Pas facile de vous aider sans un code plus complet.

    - W

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Salut,

    En plus de l'avis de Wiztricks, qu'est-ce qui retourne False ? Une fonction écrite dans ton code ou le print ?

    D'autre part, est-ce que tu réalises que, à chaque fois que tu supprimes une colonne, leur nombre diminue d'une unité ?

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut
    Bonjour,

    Effectivement j'ai oublié de préciser l'objet, et je me suis également trompé de Forum car j'utilise wxpython.

    Voici la déclaration de ma ListCtrl
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    self.lc3 = wx.ListCtrl(self, 3, style=wx.LC_REPORT,size=(800, 800)
    Tu as raison VinsS, je n'avais pas pensé à ce que le nombre diminue. Par contre je ne vois pas comment je pourrai faire avec une fonction pour supprimer les éléments.

    Une fonction récursive ?

    Car j'ai rajouté un print et j'ai ceci:
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i in range(0,self.lc3.GetColumnCount()):
                print "i",i," ",self.lc3.DeleteColumn(i)
                print "self.lc3.GetColumnCount()",self.lc3.GetColumnCount()
            print "lc3.GetItemCount(): ",self.lc3.GetColumnCount()
    et voici le rsultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    lc3.GetItemCount() 9
    i 0   True
    self.lc3.GetColumnCount() 8
    i 1   True
    self.lc3.GetColumnCount() 7
    i 2   True
    self.lc3.GetColumnCount() 6
    i 3   True
    self.lc3.GetColumnCount() 5
    i 4   True
    self.lc3.GetColumnCount() 4
    i 5   False
    self.lc3.GetColumnCount() 4
    i 6   False
    self.lc3.GetColumnCount() 4
    i 7   False
    self.lc3.GetColumnCount() 4
    i 8   False
    self.lc3.GetColumnCount() 4
    lc3.GetItemCount():  4

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Compte à l'envers:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    start = self.lc3.GetColumnCount() -1
    for i in range(start, -1, -1):
        ...
    Je n'utilise pas wxPython mais il n'y a pas une méthode clear() sur les tableaux ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 75
    Points : 61
    Points
    61
    Par défaut
    Merci VinsS.

    Il n'existe pas de fonction pour clear pour les colonnes mais il existe la fonction clearAll() qui permet de supprimer colonne et donnée.

    Ca fonctionne très bien avec cette fonction.

    Merci pour votre aide.

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

Discussions similaires

  1. Insertion ligne vide dans une colonne, mais pas toutes les colonnes.
    Par gsekscor dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/04/2013, 23h33
  2. Réponses: 6
    Dernier message: 01/11/2010, 22h42
  3. Jtable : ne pas afficher toute les colonnes
    Par ericT dans le forum Composants
    Réponses: 3
    Dernier message: 02/08/2006, 12h54

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