选择按钮时如何更改按钮颜色,并且每个布局我只想使用 pyqt4 选择一个按钮?

这是我的示例代码。我有一个水平和垂直的行,我将在水平和垂直方向上输入我的文本。当我选择布局中的任何按钮时,当我选择另一个按钮时,我想将该键按钮更改为蓝色,该按钮会自动更新蓝色,而上一个按钮将采用原始颜色给出下面是我的代码:


import sys

from PySide import QtGui,QtCore

from functools import partial

class Example(QtGui.QWidget):

    def __init__(self):

        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        self.hbox = QtGui.QHBoxLayout()

        self.v1box = QtGui.QVBoxLayout()

        self.v2box = QtGui.QVBoxLayout()

        self.labl = QtGui.QLabel("horizontal")

        self.v1box.addWidget(self.labl)

        for key in ['1', '2', '3', '4', '5', '6']:

            self.btns1 = QtGui.QPushButton(str(key))

            self.btns1.clicked.connect(partial(self.text1, key, "horizontal"))

            self.v1box.addWidget(self.btns1)

        self.lab2 = QtGui.QLabel("vertical")

        self.v2box.addWidget(self.lab2)

        for key in ['1', '2', '3', '4', '5', '6']:

            self.btns2 = QtGui.QPushButton(str(key))

            self.btns2.clicked.connect(partial(self.text2, key,"Vertical"))

            self.v2box.addWidget(self.btns2)

        self.hbox.addLayout(self.v1box)

        self.hbox.addLayout(self.v2box)

        self.setLayout(self.hbox)

    def text1(self,key,type):

        if type == "horizontal":

            X = int(str(key))

            print X, "xxx"

    def text2(self,key,type):

        if type == "vertical":

            Y = int(str(key))


def main():

    app = QtGui.QApplication(sys.argv)

    ex = Example()

    ex.show()

    sys.exit(app.exec_())


if __name__ == '__main__':

    main()


摇曳的蔷薇
浏览 295回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python