Это окошко реализуется в Qt с помощью класса QSplashScreen
Создаем QSplashScreen с QPixmap для заднего фона
QSplashScreen splashScreen(/*const QPixmap& pixmap*/ QPixmap("/путь/до/вашей/картинки.png"));
Далее показываем это окошко
splashScreen.show(); //возвращает void
И выставляем текст (это просто показывает текст, можно использовать между QSplashScreen::show(); и QSplashScreen::finish();
splashScreen.showMessage(
/*const QString &message*/ "Сообщение",
/*int alignment = Qt::AlignLeft*/ Положение текста,
/*const QColor &color = Qt::black*/ Цвет QColor);
Положение текста - битовая комбинация вертикального и горизонтального выравнивания
Qt::Alignment
Горизонтальное выравнивание
Константа | Значение | Описание |
Qt::AlignLeft | 0x0001 | Выравнивание по левому краю |
Qt::AlignRight | 0x0002 | Выравнивание по правому
краю |
Qt::AlignHCenter | 0x0004 | Выравнивание по центру
(горизонтально) |
Вертикальное выравнивание
Константа | Значение | Описание |
Qt::AlignTop | 0x0020 | Выравнивание по верху |
Qt::AlignBottom | 0x0040 | Выравнивание по низу |
Qt::AlignVCenter | 0x0080 | Выравнивание по центру
(вертикально) |
Немного больше флагов (англ.)
Можно использовать
не более одного ключа из одной группы.
Пример: Qt::AlighVCenter | Qt::AlignHCenter - по абсолютному центру окна
Для завершения QSplashScreen надо вызвать функцию finish:
splashScreen.finish(/*QWidget * mainWin*/ this); //this если ваш класс наследуется от QWidget
Эта функция будет ждать показа окна mainWin и только после этого QSplashScreen закроется.
Это самые простые функции. Если надо "что-то посложнее", то берем и создаем свой SplashScreen и отрисовываем сами (так же, как и в QWidget-е)
Надеюсь, что мой ответ Вам помог.