pyqt5中将两个textedit关联滚动条
时间: 2024-11-20 18:35:40 浏览: 26
在PyQt5中,如果你想让两个TextEdit控件共享同一个垂直滚动条,你可以通过设置它们的`verticalScrollBar()`属性来实现。下面是一个简单的步骤:
1. 首先,创建这两个TextEdit实例,比如我们叫`textEdit1`和`textEdit2`。
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QTextEdit, QScrollBar
class MainWindow(QWidget):
def __init__(self):
super(MainWindow, self).__init__()
self.textEdit1 = QTextEdit()
self.textEdit2 = QTextEdit()
# 创建垂直滚动条
scrollbar = QScrollBar(Qt.Vertical)
```
2. 然后,将滚动条连接到第一个TextEdit,并设置第二个TextEdit的垂直滚动条为同一个对象。
```python
scrollbar.setWidget(self.textEdit1) # 设置滚动条的可滚动区域为textEdit1
self.textEdit1.setVerticalScrollBar(scrollbar)
# 将第二个TextEdit的垂直滚动条关联到同一个滚动条
self.textEdit2.setVerticalScrollBar(scrollbar)
```
3. 最后,组织布局,确保两者在同一布局内,并显示窗口。
```python
layout = QVBoxLayout()
layout.addWidget(self.textEdit1)
layout.addWidget(self.textEdit2)
self.setLayout(layout)
self.show()
```
现在,当你在任何一个TextEdit中滚动内容时,另一个TextEdit也会同步滚动。
阅读全文