以下是相关代码和结果图片,该怎么实现无边框和透明背景
import sys
from PyQt6 import QtCore, QtWidgets
from PyQt6.QtCore import Qt
from PyQt6.QtWidgets import QWidget, QApplication, QMessageBox
class Ui_Form(QWidget):
def __init__(self):
super(Ui_Form, self).__init__()
self.setWindowFlag(QtCore.Qt.WindowType.MSWindowsFixedSizeDialogHint) # 显示最小化和关闭按钮
self.setupUi(self)
self.setWindowFlags(Qt.WindowType.FramelessWindowHint)
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 300)
self.frame = QtWidgets.QFrame(parent=Form)
self.frame.setGeometry(QtCore.QRect(0, 0, 401, 301))
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
self.frame.setObjectName("frame")
self.frame_2 = QtWidgets.QFrame(parent=self.frame)
self.frame_2.setGeometry(QtCore.QRect(0, 0, 401, 311))
self.frame_2.setStyleSheet("background-color: rgba(199, 199, 199, 50);\n")
self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
self.frame_2.setObjectName("frame_2")
self.label = QtWidgets.QLabel(parent=self.frame_2)
self.label.setGeometry(QtCore.QRect(60, 90, 291, 31))
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(parent=self.frame_2)
self.pushButton.setGeometry(QtCore.QRect(150, 190, 75, 24))
self.pushButton.setObjectName("pushButton")
# 按钮点击事件绑定槽函数
self.pushButton.clicked.connect(self.push)
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "主题更换"))
self.label.setText(_translate("Form", "亲,主题还没开发出来哦~,嘻嘻"))
self.pushButton.setText(_translate("Form", "没关系"))
def push(self):
QMessageBox.information(None, '系统提示', '你是个好人!'
