PyQt5写一段代码,界面像打开的图书一样,分为左右两部分,左边两个按钮一个输入框,右边是显示框,左边一个按钮控制输入框,将输入的内容在右边显示框中显示,并将输入的内容存放到一个list中,左边第二个输入框,将历史的输入内容全部输出
时间: 2024-05-02 09:19:08 浏览: 98
很高兴回答你的问题!以下是你需要的PyQt5代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QLabel, QLineEdit, QPushButton, QVBoxLayout, QHBoxLayout, QWidget
class BookWidget(QWidget):
def __init__(self):
super().__init__()
# 创建左侧部分
self.left_v_layout = QVBoxLayout()
# 创建第一个输入框和按钮
self.input_line_edit = QLineEdit()
self.left_v_layout.addWidget(self.input_line_edit)
self.add_button = QPushButton("添加")
self.add_button.clicked.connect(self.add_text)
self.left_v_layout.addWidget(self.add_button)
# 创建第二个输入框和按钮
self.clear_button = QPushButton("清空")
self.clear_button.clicked.connect(self.clear_text)
self.left_v_layout.addWidget(self.clear_button)
# 创建整体布局
self.layout = QHBoxLayout(self)
self.layout.addLayout(self.left_v_layout)
# 创建右侧部分
self.right_v_layout = QVBoxLayout()
self.text_label = QLabel("")
self.right_v_layout.addWidget(self.text_label)
# 添加整体布局
self.layout.addLayout(self.right_v_layout)
self.setLayout(self.layout)
# 创建一个列表,用于保存输入的内容
self.text_list = []
def add_text(self):
# 获取输入框的内容
text = self.input_line_edit.text()
# 添加到列表中
self.text_list.append(text)
# 将列表中的所有内容显示在右侧的文本框中
self.text_label.setText("\n".join(self.text_list))
def clear_text(self):
# 清空列表中的内容
self.text_list.clear()
# 清空右侧的文本框
self.text_label.setText("")
if __name__ == '__main__':
app = QApplication(sys.argv)
book_widget = BookWidget()
book_widget.show()
sys.exit(app.exec_())
```
这段代码可以创建一个界面,分为左右两部分,左边有两个按钮和一个输入框,右边是一个显示框。左边的第一个按钮可以将输入的内容显示在右边的显示框中,并将输入的内容存放到一个列表中。左边的第二个按钮可以清空列表和显示框中的内容。左侧第二个输入框暂时没有用到。
希望这段代码可以帮到你!
阅读全文