我想更改我的PushButton课程1的边框半径
试图在__init__中创建带有setStyleSheet的类Button并创建一个对象。
import sys
from pyto import *
from PyQt5 import QtCore, QtGui, QtWidgets
class MyWin(QtWidgets.QMainWindow):
def __init__(self, parent=None):
QtWidgets.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.lesson1 = Button()
class Button(QtWidgets.QPushButton):
def __init__(self, parent = None):
super(Button, self).__init__(parent)
self.setStyleSheet('border-radius: 15px;')
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
myapp = MyWin()
myapp.show()
sys.exit(app.exec_())
没有错误,但setStyleSheet不起作用。
答案 0 :(得分:1)
代码self.ui.lesson1 = Button()
不会替代Qt Designer创建的self.ui.lesson1,它只会导致将新的Button()
分配给名称self.ui.lesson1
。因此,如果要设置样式表,则不必创建另一个类:
# ...
class MyWin(QtWidgets.QMainWindow):
def __init__(self, parent=None):
QtWidgets.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
# self.ui.lesson1 = Button()
self.ui.lesson1.setStyleSheet('border-radius: 15px; background-color: red;')
# ...
我添加了背景色以使半径可见。