How to create a splash screen with an induced delay
Jump to navigation
Jump to search
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine. Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean. |
h1. How to create a splash screen with an induced delay.
We have "QSplashScreen":http://doc.qt.nokia.com/latest/qsplashscreen.html which is used to cover up the starting delay of the program. More about splash screen is "here":http://doc.qt.nokia.com/latest/qsplashscreen.html. Some times the programs might be quick enough ,so that the splash screen may not be visible. We may induce some delay to show the splash , as a decoration !
Here in this example, using "QThread":http://doc.qt.nokia.com/latest/qthread.html a delay is induced.
#include <QApplication>
#include <QSplashScreen>
#include <qthread.h>
#include "mainwindow.h"
class I : public QThread
{
public:
static void sleep(unsigned long secs) {
QThread::sleep(secs);
}
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPixmap pixmap("splash.jpg");
QSplashScreen splash(pixmap);
splash.show();
MainWindow mainWin;
mainWin.setWindowTitle("Application");
I::sleep(5); // splash is shown for 5 seconds
mainWin.showMaximized();
splash.finish(&mainWin);
return app.exec();
}
Easy! Happy coding!