两个EditText同步滚动"/>
C++:在Qt中设计两个EditText同步滚动
最近刚刚接触Qt的编程,有个需求是需要两个EditText可以同步滚动,拖动其中一个滚动条时另一个也会滚动
先设计信号
QScrollBar *QSB_left=ui->plainTextEdit_left->verticalScrollBar();QScrollBar *QSB_right=ui->plainTextEdit_right->verticalScrollBar();connect(QSB_left,SIGNAL(valueChanged(int)),this,SLOT(leftScroll()));//valueChanged()中要填intconnect(QSB_right,SIGNAL(valueChanged(int)),this,SLOT(rightScroll()));
设计槽
private slots:void leftScroll();void rightScroll();
定义函数
void MainWindow::leftScroll()
{QScrollBar *QSB_left=ui->plainTextEdit_left->verticalScrollBar();QScrollBar *QSB_right=ui->plainTextEdit_right->verticalScrollBar();QSB_right->setValue(QSB_left->value());
}void MainWindow::rightScroll()
{QScrollBar *QSB_left=ui->plainTextEdit_left->verticalScrollBar();QScrollBar *QSB_right=ui->plainTextEdit_right->verticalScrollBar();QSB_left->setValue(QSB_right->value());
}
实现效果:
QQ录屏20220425151056
更多推荐
C++:在Qt中设计两个EditText同步滚动
发布评论