QT收集窗口一行编辑器中的数据,打印在窗口二的标签中
时间: 2024-02-13 14:01:10 浏览: 103
可以通过以下步骤实现:
1. 在窗口一中,创建一个 QLineEdit 对象并将其添加到布局中。
2. 在窗口一的代码中,连接 QLineEdit 的 textChanged 信号到一个槽函数中,该槽函数将获取 QLineEdit 的文本并将其传递给窗口二。
3. 在窗口二中,创建一个 QLabel 对象并将其添加到布局中。
4. 在窗口二的代码中,创建一个槽函数来接收来自窗口一的文本,并将其设置为 QLabel 的文本。
下面是一个示例代码:
```python
# 窗口一
class Window1(QWidget):
def __init__(self):
super().__init__()
# 创建一个 QLineEdit 对象
self.line_edit = QLineEdit(self)
# 将 QLineEdit 的 textChanged 信号连接到槽函数 on_text_changed
self.line_edit.textChanged.connect(self.on_text_changed)
def on_text_changed(self, text):
# 将文本传递给窗口二
window2.label.setText(text)
# 窗口二
class Window2(QWidget):
def __init__(self):
super().__init__()
# 创建一个 QLabel 对象
self.label = QLabel(self)
# 将 QLabel 添加到布局中
layout = QVBoxLayout(self)
layout.addWidget(self.label)
```
在主程序中,创建窗口一和窗口二的实例并显示它们:
```python
app = QApplication(sys.argv)
window1 = Window1()
window1.show()
window2 = Window2()
window2.show()
sys.exit(app.exec_())
```
这样,当用户在窗口一的 QLineEdit 中输入文本时,该文本将自动显示在窗口二的 QLabel 中。
阅读全文