Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Заставка вылетает  (Прочитано 235 раз)
0 Пользователей и 3 Гостей смотрят эту тему.
mikkijon
Интересующийся

kr
Offline Offline

« : 09-01-2025 21:15 » new

Приветствую Друзья
И снова обращаюсь к Вам за помощью. Так как опять запутался по хождению нашей всемирной сети...... Суть проблемы в следующем... Я изучаю "Оконные приложения Python 3 и PyQt6", автор Прохорёнок Н.А. и Дронов В.А. Пройдя три главы а именно:
Глава 18.9. - Вывод заставки
Глава 19.5. - Разворачивание и сворачивание окон
Глава 19.6. - Управление прозрачностью окна

Я решил соединить листинги из этих глав....

Код: (Python)
from PyQt6 import QtCore, QtWidgets, QtGui
import time
class MyWindow(QtWidgets.QWidget):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        self.btnMin = QtWidgets.QPushButton("Свернуть")
        self.btnMax = QtWidgets.QPushButton("Развернуть")
        self.btnFull = QtWidgets.QPushButton("Полный экран")
        self.btnNormal = QtWidgets.QPushButton("Нормальный размер")
        vbox = QtWidgets.QVBoxLayout()
        vbox.addWidget(self.btnMin)
        vbox.addWidget(self.btnMax)
        vbox.addWidget(self.btnFull)
        vbox.addWidget(self.btnNormal)
        self.setLayout(vbox)
        self.btnMin.clicked.connect(self.on_min)
        self.btnMax.clicked.connect(self.on_max)
        self.btnFull.clicked.connect(self.on_full)
        self.btnNormal.clicked.connect(self.on_normal)
    def on_min(self):
        self.showMinimized()
    def on_max(self):
        self.showMaximized()
    def on_full(self):
        self.showFullScreen()
    def on_normal(self):
        self.showNormal()
    def load_data(self, ap):
        for i in range(1, 20): # Имитируем процесс
            time.sleep(20000) # Что-то загружаем
            ap.showMessage("Загрузка данных...(0%)".format(i*10),
                           QtCore.Qt.AlignmentFlag.AlignHCenter|
                           QtCore.Qt.AlignmentFlag.AlignBottom,
                           QtCore.Qt.GlobalColor.red)
            # Принудительно обрабатываем события
            QtWidgets.QApplication.instance().processEvents()
if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    window = MyWindow()
    window.setWindowTitle("Разворачивание и сворачивание окон")
    window.resize(300, 100)
    splash = QtWidgets.QSplashScreen(QtGui.QPixmap("screen2.jpg"))
    splash.showMessage("Загрузка данных... (0)%",
                       QtCore.Qt.AlignmentFlag.AlignHCenter |
                       QtCore.Qt.AlignmentFlag.AlignBottom,
                       QtGui.QColor("red"))
    splash.show()
    QtWidgets.QApplication.instance().processEvents()
    window.show()
    splash.finish(window)
    sys.exit(app.exec())
Все получилось кроме заставки..... окно появляется и тут же исчезает (также высылаю Вам сам программу)

Помогите пожалуйста разобраться ....
Заранее благодарю

* PythonProject5.rar (146.1 Кб - загружено 17 раз.)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines