Python 在pyqt中选择单选按钮时更改lineEdit的文本
我有两个Python 在pyqt中选择单选按钮时更改lineEdit的文本,python,user-interface,button,pyqt4,radio,Python,User Interface,Button,Pyqt4,Radio,我有两个单选按钮,是用qt设计器制作的,我现在用pyqt编程。如果选择了radioButton1,我希望将lineEdit的文本更改为“单选1”,如果选择了radioButton2,则更改为“单选2”。我怎样才能做到这一点呢?下面是一个简单的例子。每个QRadioButton都连接到自己的功能。您可以将它们连接到同一个函数并管理通过该函数发生的事情,但我认为最好演示信号和插槽是如何工作的 有关更多信息,请查看PyQt4。如果将多个信号连接到同一插槽,有时使用QObject的方法是有用的,尽管在Q
单选按钮
,是用qt设计器制作的,我现在用pyqt编程。如果选择了radioButton
1,我希望将lineEdit
的文本更改为“单选1”,如果选择了radioButton
2,则更改为“单选2”。我怎样才能做到这一点呢?下面是一个简单的例子。每个QRadioButton
都连接到自己的功能。您可以将它们连接到同一个函数并管理通过该函数发生的事情,但我认为最好演示信号和插槽是如何工作的
有关更多信息,请查看PyQt4。如果将多个信号连接到同一插槽,有时使用QObject
的方法是有用的,尽管在QRadioButton
的情况下,只需检查所需按钮的方法可能更容易
import sys
from PyQt4.QtGui import QApplication, QWidget, QVBoxLayout, \
QLineEdit, QRadioButton
class Widget(QWidget):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.widget_layout = QVBoxLayout()
self.radio1 = QRadioButton('Radio 1')
self.radio2 = QRadioButton('Radio 2')
self.line_edit = QLineEdit()
self.radio1.toggled.connect(self.radio1_clicked)
self.radio2.toggled.connect(self.radio2_clicked)
self.widget_layout.addWidget(self.radio1)
self.widget_layout.addWidget(self.radio2)
self.widget_layout.addWidget(self.line_edit)
self.setLayout(self.widget_layout)
def radio1_clicked(self, enabled):
if enabled:
self.line_edit.setText('Radio 1')
def radio2_clicked(self, enabled):
if enabled:
self.line_edit.setText('Radio 2')
if __name__ == '__main__':
app = QApplication(sys.argv)
widget = Widget()
widget.show()
sys.exit(app.exec_())