QT splash screen
-
Kann man einen QT-Splash screen vor einer Konsolenanwendung anzeigen lassen?
Wenn ja bitte auch ein Minimalbeispiel posten da ich mir nichts zusammenmurksen konnte.Das GUI-Modul habe ich trotz Konsolenanwendung mit eingebunden so dass Splashscreen ja eigentlich gehen dürfte oder?
-
Prinzipiell gehen sollte es. Zeig mal was du so "zusammengemurkst" hast.
Ein SplashCreen hat ja nur die Aufgabe, bei einem etwas längeren Programmstart anzuzeigen, dass alles OK ist und über den gerade abzuarbeitenden Punkt eine kurze Info anzeigt ("Lade Datenbank" usw.), während noch kein funktionierendes MainWindow sichtbar ist.
Ich finde in einer Konsolenanwendung kannst du da wunderbar einfach über Meldungen auf der Konsole das selbe Ziel erreichen, und es wirkt auch "natürlicher". Vor allem wenn man in einer Umgebung ohne Fenster arbeitet (Linux Terminal z.B.), da kriegst du dann nen Fehler ("No running XServer, aborting" unter Linux) und dein Programm ist nutzlos! Überleg dir das lieber ob du das wirklich willst.
-
also das gemurkse:
#include <QtCore/QCoreApplication> #include <QSplashScreen> #include <iostream> int main() { QPixmap pixmap("8balln.png"); QSplashScreen splash(pixmap); splash.show(); for(int i=0;i<1000000;i++) { std::cout << "Hallo" << std::endl; } splash.finish(NULL); }
gedacht ist dass er ein Bild anzeigt dann bis 1000000 zählt und dann alles beendet.
Da das das erste mal ist dass ich mit sowas arbeiten will, wird noch ne Menge falsch sein, was mich verwundert.... er kompiliert fehlerfrei selbst wenn das zu ladende Bild nicht existiert ^^
-
Ich würde sagen du liest dir noch mal die Grundlagen zu Qt durch.
Als Tip: Du hast keine Eventloop! Und dass du was siehst (dass dein Splash angezeigt und aktualisiert wird) müssen Events abgearbeitet werden.
Wie das speziell mit dem SplashScreen geht steht wunderbar in der Doku...
-
Hmm gibts da eine bessere Möglichkeit?
Im Grunde möchte ich nur einen Splash-Screen wer oder was das erzeugt ist egal, ich habe aber keine Zeit mich speziell in QT einzuarbeiten, oder meinst du dass mir das soweit in etwa 1 Woche gelingen wird?
Es ist im Grunde kein QT-Projekt, nur brauch ich etwas um auf einfach Weise das graphische etwas aufzumotzen.
-
Grafisch aufgepeppt zu werden ist doch nicht der Sinn einer Konsolen-Applikation!
Wenn dann würde ich Farbe in den tristen Konsolen-Alltag bringen - bunte Messages sind doch wundervoll!
Und bitte schau doch endlich die Doku genauer an:
http://doc.qt.nokia.com/4.6/qsplashscreen.html#details
Da ist ein Beispiel samt langer Erklärung wie und warum das so gemacht wird...