Pyqt5界面设计隐藏主窗口并添加阴影

通过以下代码去除背景,但是因为设计的界面是白色,如果界面也是白色,看起来很别扭,因此我们要给界面加一个阴影。

通过以下代码,实现了界面添加阴影,并且此时界面看起来更舒服。

在python文件中的界面代码中加入以上代码,即可去除主窗口背景并添加隐形。

最终代码如下:

self.setAttribute(QtCore.Qt.WA_TranslucentBackground)  # 设置窗口背景透明
self.setWindowFlag(QtCore.Qt.FramelessWindowHint)  # 隐藏边框
self.shadow = QtWidgets.QGraphicsDropShadowEffect(self)#设置阴影
self.shadow.setOffset(0,0)
self.shadow.setBlurRadius(20)
self.shadow.setColor(QtCore.Qt.black)
self.frame.setGraphicsEffect(self.shadow)
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是两种PyQt5界面设计窗口的例子: 1. 使用Tab Widget实现多页面切换: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QTabWidget, QWidget, QVBoxLayout class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("Tab Widget Example") # 创建Tab Widget self.tab_widget = QTabWidget() # 创建页面1 page1 = QWidget() layout1 = QVBoxLayout() layout1.addWidget(QLabel("Page 1")) page1.setLayout(layout1) # 创建页面2 page2 = QWidget() layout2 = QVBoxLayout() layout2.addWidget(QLabel("Page 2")) page2.setLayout(layout2) # 将页面添加到Tab Widget中 self.tab_widget.addTab(page1, "Page 1") self.tab_widget.addTab(page2, "Page 2") # 设置Tab Widget为窗口的中心部件 self.setCentralWidget(self.tab_widget) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ``` 2. 使用Stacked Widget实现多页面切换: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QStackedWidget, QWidget, QVBoxLayout class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("Stacked Widget Example") # 创建Stacked Widget self.stacked_widget = QStackedWidget() # 创建页面1 page1 = QWidget() layout1 = QVBoxLayout() layout1.addWidget(QLabel("Page 1")) page1.setLayout(layout1) # 创建页面2 page2 = QWidget() layout2 = QVBoxLayout() layout2.addWidget(QLabel("Page 2")) page2.setLayout(layout2) # 将页面添加到Stacked Widget中 self.stacked_widget.addWidget(page1) self.stacked_widget.addWidget(page2) # 设置Stacked Widget为窗口的中心部件 self.setCentralWidget(self.stacked_widget) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值