启动一秒之内画面:
一秒之后的运行效果:
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
};
#endif // MAINWINDOW_H
mainwindow.cpp
#include "mainwindow.h"
#include <QTextEdit>
#include <windows.h>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
setWindowTitle("Splash Example");
QTextEdit *edit=new QTextEdit;
edit->setText("Splash Example!");
setCentralWidget(edit);
resize(300,200);
Sleep(1000); //主窗口在初始化时休眠一秒
}
MainWindow::~MainWindow()
{
}
main.cpp
#include "mainwindow.h"
#include <QApplication>
#include <QPixmap>
#include <QSplashScreen>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
/*创建一个QPixmap对象,设置启动图片*/
QPixmap pixmap("Qt.png");
QSplashScreen splash(pixmap);
splash.show();
/*使程序在显示启动画面的同时仍能响应鼠标等其他事件*/
a.processEvents();
MainWindow w;
w.show();
/*主窗体对象初始化完成后,结束启动画面*/
splash.finish(&w);
return a.exec();
}