wake-up-neo.net

Wo wird diese Warnung ausgegeben "QApplication: ungültiger Stil überschrieben, ignoriert".

Mein Code gibt die Warnung aus (nicht sicher, ob es sich tatsächlich um eine Warnung handelt)

QApplication: invalid style override passed, ignoring it.

aber nichts anderes. Es sagt mir nicht, welcher Teil des Codes den Code erhöht.

Woher weiß ich, welcher Teil meines Codes diese Warnung auslöst?

6
Gabriel

Woher weiß ich, welcher Teil meines Codes diese Warnung auslöst?

Beginnen Sie mit den Teilen Ihres Codes, die eine GUI aufrufen. Da das OP ein Wissenschaftler zu sein scheint, gehe ich wild davon aus, dass matplotlib involviert ist. Ich kann die Nachricht mit reproduzieren 

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

mit folgenden Paketversionen (aus 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

Dieses Problem tritt bei qt 5.9.2 und pyqt 5.9.2 auf. Dieses Problem ist dem Anaconda-Team bekannt und wird ignoriert, da es hauptsächlich von qt stammt.

Ich habe diesen Fehler für Anaconda-Navigator (Anaconda3-5.2.0-Linux-x86_64) erhalten, und dies hat dazu geführt, dass mein Spyder (v3.2.8) IDE für Python 3.6 unsichtbar wird. Durch das Downgrading von qt und pyqt wurde das Problem gelöst. 

Um ein Downgrade durchzuführen, geben Sie in console ein: 

conda install pyqt=5.6

Hinweis: Falls Ihre Conda nicht aktualisiert wird, müssen Sie Conda aktualisieren, bevor Sie den obigen Befehl ausführen. So aktualisieren Sie den Conda-Lauf: 

conda update -n base conda

Ich hoffe, das wird auch Ihr Problem lösen.

2
Narnia_Optimus

Die Ursache für diese Meldung ist, dass die Umgebungsvariable QT_STYLE_OVERRIDE auf Ihrem System auf einen Wert festgelegt ist, der von Ihrer Qt-Installation nicht unterstützt wird. Sie können dies mit überprüfen

    sh-Prompt> set | grep QT

Um diese Warnung zu beheben, können Sie entweder die Variable in /etc/profile Oder $HOME/.bashrc Ändern oder - wenn nur ein Programm betroffen ist - das Programm mit starten

    QT_STYLE_OVERRIDE="" program

Das Deaktivieren der Variablen mit qputenv in Ihrem Programmcode (wie in Harvey vorgeschlagen) hat den Nebeneffekt, dass Stileinstellungen von Ihrer Anwendung selbst auf Systemen, die dies unterstützen, ignoriert werden.

1
cdalitz

Auf Ubuntu 18.04 habe ich Anaconda installiert.

$ anaconda-navigator

QApplication: invalid style override passed, ignoring it.

Wenn Sie Spyder von Anaconda-Navigator ausführen:

/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

Wenn Sie Spyder von der Befehlszeile aus ausführen:

/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

Dies hat mein Problem behoben:

$ conda install pyqt=5.6

Vielen Dank an Narnia_Optimus

0
rwg

[EDIT]: Ich habe gerade eine bessere Lösung für meinen eigenen C++ - Code gefunden. Es ist immer noch nur eine "Problemumgehung", aber die Warnung ist weg. Fügen Sie eine Zeile ganz oben in der Funktion main() hinzu:

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

Dadurch wird die Umgebungsvariable gelöscht, die die Warnung verursacht.

[ALTE ANTWORT]:

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