这是我的示例代码。我有一个水平和垂直的行,我将在水平和垂直方向上输入我的文本。当我选择布局中的任何按钮时,当我选择另一个按钮时,我想将该键按钮更改为蓝色,该按钮会自动更新蓝色,而上一个按钮将采用原始颜色给出下面是我的代码:import sysfrom PySide import QtGui,QtCorefrom functools import partialclass 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()
添加回答
举报
0/150
提交
取消