如何更改按钮边框的半径

问题描述 投票:0回答:1

我想更改我的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不起作用。

python pyqt pyqt5
1个回答
0
投票

代码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;')

# ...
© www.soinside.com 2019 - 2024. All rights reserved.