Bonjour à tous,

Je suis face à une erreur que je ne comprend pas.
Lors que j'ai des exceptions j'utilise des QMessageBox pour informer l'utilisateur de mon plugin des erreurs ou le faire choisir une autre solution. J'ai un peu modifié mon code aujourd'hui j'ai ce message d'erreur maintenant.
Cela ce produit pour tous les QmessageBox de mon code. Voici un exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
Traceback (most recent call last):
  File "C:\Users\AUGU\.qgis2\python\plugins\PostgisConnectionCopy\ui_postgisconnection.py", line 415, in val_import
    self.wp.wp_postgis(values, ui_values,list_values)
  File "C:\Users\AUGU\.qgis2\python\plugins\PostgisConnectionCopy\wp_importation.py", line 67, in wp_postgis
    QtGui.QMessageBox.warning(self, 'Message',"The project :  %s is already in the database."%(projNum))
TypeError: arguments did not match any overloaded call:
  QMessageBox.warning(QWidget, QString, QString, QMessageBox.StandardButtons buttons=QMessageBox.Ok, QMessageBox.StandardButton defaultButton=QMessageBox.NoButton): argument 1 has unexpected type 'instance'
  QMessageBox.warning(QWidget, QString, QString, int, int, int button2=0): argument 1 has unexpected type 'instance'
  QMessageBox.warning(QWidget, QString, QString, QString, QString button1Text=QString(), QString button2Text=QString(), int defaultButtonNumber=0, int escapeButtonNumber=-1): argument 1 has unexpected type 'instance'
La classe dans laquelle est ce QmsgBox est comme cela:
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
21
22
23
# -*- coding: utf-8 -*-
from PyQt4 import QtCore, QtGui
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys
import os
import unicodedata
import psycopg2
import xlrd
from xlrd import XLRDError
 
 
class Wp_importation:
     def __init__(self):
         wp_val =()
         data_ui=()
         wp_list=()
         self.wp_postgis(wp_val,data_ui,wp_list)        
 
     def wp_postgis(self,data, data_ui,list_data) :
        ...
        ici le code et les appels des QMessageBox
        ...
Pour info le principe de la classe est : Lire un fichier excel et d'importer les données dans une base de données postgresql.

Merci d'avance !