pyqt5 文本框自动滚动代码
时间: 2023-08-11 11:56:05 浏览: 178
PyQt5 文本输入框自动补全QLineEdit的实现示例
要实现文本框的自动滚动,可以使用QScrollBar和scrollToBottom()方法。以下是一个示例代码:
```python
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit, QVBoxLayout, QWidget
from PyQt5.QtCore import Qt
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.text_edit = QTextEdit()
self.text_edit.setReadOnly(True) # 设置为只读模式
layout = QVBoxLayout()
layout.addWidget(self.text_edit)
widget = QWidget()
widget.setLayout(layout)
self.setCentralWidget(widget)
def add_text(self, text):
self.text_edit.append(text)
self.text_edit.moveCursor(Qt.QTextCursor.End) # 将光标移动到末尾
self.text_edit.ensureCursorVisible() # 确保光标可见
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
# 添加文本并自动滚动
window.add_text("Hello, World!")
window.add_text("This is an example.")
window.add_text("Lorem ipsum dolor sit amet, consectetur adipiscing elit.")
app.exec_()
```
这段代码创建了一个主窗口,其中包含一个只读的QTextEdit文本框。add_text()方法用于向文本框中添加文本,并在添加后自动滚动到底部。
你可以根据自己的需求进行修改和扩展。希望能对你有所帮助!
阅读全文