web-dev-qa-db-fra.com

Où cet avertissement est-il émis 'QApplication: remplacement du style non valide passé, en l'ignorant.'?

Mon code lance l'avertissement (je ne sais pas s'il s'agit réellement d'un avertissement)

QApplication: invalid style override passed, ignoring it.

mais rien d'autre. Cela ne me dit pas quelle partie du code le soulève.

Comment savoir quelle partie de mon code déclenche cet avertissement?

6
Gabriel

Comment savoir quelle partie de mon code déclenche cet avertissement?

Commencez par les parties de votre code qui invoquent une interface graphique. Étant donné que le PO semble être un scientifique, je suppose que matplotlib est impliqué. Je peux reproduire le message avec 

import matplotlib.pyplot as plt
plt.plot([1, 2])

en utilisant les versions de paquet suivantes (à partir de conda list):

matplotlib                2.2.2            py36h0e671d2_1    defaults
pyqt                      5.9.2            py36h751905a_0    defaults
qt                        5.9.4                h4e5bff0_0    defaults
1
drammock

Ce problème provient de qt 5.9.2 et pyqt 5.9.2. Ce problème est connu de l’équipe Anaconda et ils l’ignorent car il provient principalement de qt.

J'ai eu cette erreur pour anaconda-navigator (Anaconda3-5.2.0-Linux-x86_64) et cela a rendu mon Spyder (v3.2.8) IDE pour Python 3.6 invisible. Le déclassement de qt et pyqt a résolu le problème. 

Pour rétrograder, tapez console: 

conda install pyqt=5.6

Remarque: Si votre conda n'est pas mis à jour, vous devez le mettre à jour avant d'exécuter la commande ci-dessus. Pour mettre à jour conda run: 

conda update -n base conda

J'espère que cela résoudra aussi votre problème.

2
Narnia_Optimus

Sur Ubuntu 18.04, j'ai installé anaconda.

$ anaconda-navigator

QApplication: invalid style override passed, ignoring it.

Lorsque vous exécutez spyder depuis anaconda-navigator:

/home/username/.anaconda/navigator/scripts/spyder.sh: line 3: 31873 Segmentation fault      (core dumped) spyder >
/home/username/.anaconda/navigator/scripts/spyder-out-1.txt 2>
/home/username/.anaconda/navigator/scripts/spyder-err-1.txt

Lorsque vous exécutez spyder à partir de la ligne de commande:

/home/username/.anaconda/navigator/scripts/spyder.sh: line 3: 31873 Segmentation fault      (core dumped) spyder > 
/home/username/.anaconda/navigator/scripts/spyder-out-1.txt 2> 
/home/username/.anaconda/navigator/scripts/spyder-err-1.txt

Cela a résolu mon problème:

$ conda install pyqt=5.6

Merci beaucoup à Narnia_Optimus

0
rwg

[EDIT]: Je viens de trouver une meilleure solution pour mon propre code C++. Ce n'est toujours qu'une solution de contournement, mais l'avertissement est parti. Ajoutez une ligne tout en haut de la fonction main(), comme ceci:

int main(int argc, char *argv[])
{
    qputenv("QT_STYLE_OVERRIDE",0);
    ...

Cela désélectionnera la variable d'environnement à l'origine de l'avertissement.

[ANCIENNE RÉPONSE]:

Error message:
 QApplication: invalid style override passed, ignoring it.

To remove this error message:
 In Qt Creator (ver 4.4.1)
  Select "Projects" (wrench icon on left Edge)
   Under "Build & Run" (left pane)
    Select "Run"
     Under "Run Settings" (right pane)
      Under "Run Environment"
       Select "Details" (drop down list)
        Scroll down to "QT_STYLE_OVERRIDE"
         Click it to highlight it
         Then click "Unset" button (right side)
       Click "Details" to close the list

Now when you run the application you shouldn't see this error message.
0
Harvey