54 lines
1.5 KiB
Python
54 lines
1.5 KiB
Python
# coding:utf-8
|
|
import sys
|
|
|
|
from PyQt5.QtCore import Qt, QEventLoop, QTimer, QSize
|
|
from PyQt5.QtGui import QIcon
|
|
from PyQt5.QtWidgets import QApplication
|
|
|
|
from qfluentwidgets import SplashScreen
|
|
from qframelesswindow import FramelessWindow, StandardTitleBar
|
|
|
|
|
|
class Demo(FramelessWindow):
|
|
|
|
def __init__(self):
|
|
super().__init__()
|
|
self.resize(700, 600)
|
|
self.setWindowTitle('PyQt-Fluent-Widgets')
|
|
self.setWindowIcon(QIcon(':/qfluentwidgets/images/logo.png'))
|
|
|
|
# create splash screen and show window
|
|
self.splashScreen = SplashScreen(self.windowIcon(), self)
|
|
self.splashScreen.setIconSize(QSize(102, 102))
|
|
|
|
# customize the title bar of splash screen
|
|
# titleBar = StandardTitleBar(self.splashScreen)
|
|
# titleBar.setIcon(self.windowIcon())
|
|
# titleBar.setTitle(self.windowTitle())
|
|
# self.splashScreen.setTitleBar(titleBar)
|
|
|
|
self.show()
|
|
|
|
# create other subinterfaces
|
|
self.createSubInterface()
|
|
|
|
# close splash screen
|
|
self.splashScreen.finish()
|
|
|
|
def createSubInterface(self):
|
|
loop = QEventLoop(self)
|
|
QTimer.singleShot(3000, loop.quit)
|
|
loop.exec()
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
# enable dpi scale
|
|
QApplication.setHighDpiScaleFactorRoundingPolicy(Qt.HighDpiScaleFactorRoundingPolicy.PassThrough)
|
|
QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
|
|
QApplication.setAttribute(Qt.AA_UseHighDpiPixmaps)
|
|
|
|
app = QApplication(sys.argv)
|
|
w = Demo()
|
|
w.show()
|
|
app.exec_() |