Wo soll ich die QApplication :: notify Funktion neu implementieren? Was ich meine ist, welche Klasse? Eine meiner eigenen Klassen oder Unterklasse von Qt's Klasse und mache es dort? Ich brauche das, weil ich den folgenden Fehler beim Herunterladen der Datei von einem Server bekomme (kleine Dateien werden heruntergeladen, ok, aber große verursachen diese msg):
Qt hat eine Ausnahme abgefangen, die von einem Event-Handler ausgelöst wurde. Werfen Ausnahmen von einem Event-Handler werden in Qt nicht unterstützt. Du musst reimplementiere QApplication :: notify () und fange alle Ausnahmen dort.
Nur Unterklasse QApplication
und in Ihrer notify(..)
-Methode tun Sie etwas wie folgt:
Dann verwenden Sie es in Ihrer Hauptfunktion anstelle von QApplication
.
Wie bereits erwähnt, erstellen Sie Ihr eigenes Anwendungsobjekt, das von QtApplication erbt und 'notify' neu definiert. Es ist der Weg zu gehen. Seien Sie jedoch sehr sicher, diesen Konstruktor zu verwenden:
%Vor%Einstellung von argc als Referenz mit '& amp;' ist wichtig, da es auf einigen Plattformen einen Absturz vermeidet.
Das vollständige Verfahren wird hier beschrieben: Ссылка
Meine eigene Implementierung:
%Vor%(Der oben beschriebene Absturz passierte unter Ubuntu 13.10 64 Bit, war aber in Version 12.04 64 Bit nicht vorhanden.)