- a.processEvents():使程序在显示启动画面的同时仍能响应鼠标等其他事件。
- splash.finish(&w):表示在主窗体对象初始化完成后,结束启动画面。
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
};
#endif // MAINWINDOW_H
mainwindow.cpp
#include <QTextEdit>
#include "mainwindow.h"
#include <synchapi.h>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
setWindowTitle("Splash Example");
QTextEdit *edit = new QTextEdit;
edit->setText("Splash Example");
setCentralWidget(edit);
resize(600, 450);
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 pixmap("Qt.png");
QSplashScreen splash(pixmap);
splash.show();
a.processEvents();
MainWindow w;
w.show();
splash.finish(&w);
return a.exec();
}