1>.\src\DialogGratingPeriodVariation.cpp(45) : error C2594: 'Argument': Mehrdeutige Konvertierung von 'DialogGratingPeriodVariation *const ' in 'const QObject *'
1>.\src\DialogGratingPeriodVariation.cpp(45) : error C3861: "connect": Bezeichner wurde nicht gefunden.
1>.\src\DialogGratingPeriodVariation.cpp(46) : error C2385: Mehrdeutiger Zugriff von "connect".
1> könnte "connect" in Basis "QObject" sein
1> oder könnte "connect" in Basis "QObject" sein
Wie binde ich dann einen Thread in einen Dialog ein? Ich will natürlich nicht den Dialog selber in einen eigenen Thread packen, sondern eine Funktion innerhalb des Dialogs.
Sephral hat geschrieben:Hallo,
warum erzeugst du Deinen Thread nicht einfach im Konstruktor des Dialogs oder erst wenn du ihn brauchst (Knopf wird gedrückt oder was auch immer)?
wie soll den das gehen? Die Klasse in der die run() Funktion steht muss doch von QThread abgeleitet sein.
PeterLustig hat geschrieben:Du weißt schon das du _keinerlei_ GUI Operationen außerhalb des Main-Threads durchführen darfst, oder?
Was meinst du damit? Dass ich keinen Dialog in einem anderen Thread laden kann?
Ich möchte an einen Dialog der Bilder darstellt kontinuierlich welche übergeben. Da das ganze in einer For schleife abläuft ist solange die restliche GUI blockiert. Genau das möchte ich umgehen.
Du kannst das Bild in einem Dialog nicht aus einem anderen Thread heraus ändern. Wie ich schon sagte, du darfst _KEINE_ GUI relevanten Operationen aus einem anderen Thread heraus ausführen. Steht auch in der Dokumentation zu den Threads.
In GUI applications, the main thread is also called the GUI thread because it's the only thread that is allowed to perform GUI-related operations.
upsala hat geschrieben:Es gibt eine Doku zu QThread und es gibt passende Beispiele in der Doku, die würde ich mir mal ansehen...
Ich habe schon Threads mit QThread programmiert und sehe nicht wo mir die Doku meine Frage bzgl der GUI in eigenen Threads beantwortet. Aber ich habe inwzischen in einem Qt4 Buch nachgelesen, das alles was ein widget enthält nicht in einen Thread darf. Nur leider taucht das Wort Widget nicht in der Doku zu QThread auf.
Naja, dann kann alles der letzten Stunden wieder umprogrammieren. Aber Danke für den Hinweis, ich wäre an den Fehlermeldungen wohl verzweifelt.
Was du machen willst lässt sich vermutlich mit einem einfachen Timer realisieren. Wenn Du die Bilder vorher aufbereiten musst, kann das ein eigener Thread machen, der Thread schickt die Bilder (bzw- Referenzen auf einen gemeinsamen Datenspeicher) dann per Signal/Slot an den GUI-Thread der das Bild letztendlich zur Anzeige bringt.