chenaiguo0503 发表于 2017-5-10 22:22:00

Qt 两QTextEdit实现滚轮同步(结贴)

本帖最后由 chenaiguo0503 于 2017-5-11 08:20 编辑

Qt中添加两个QTextEdit部件,请问怎么实现滚轮滚左边QTextEdit部件,右边也能跟着滚动,即两边同步滚动?


根据网上别的论坛的方法:

添加这么个槽函数:
void MainWindow::on_verticalScrollBar_valueChanged(int value)
{
    QScrollBar *scrollbar1 = ui->output_textEdit->verticalScrollBar();
    QScrollBar *scrollbar2 = ui->output_textEdit_ascii->verticalScrollBar();

    scrollbar1->setValue(value);
    scrollbar2->setValue(value);
}

在分别用connect连接信号和槽

   connect(ui->output_textEdit->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(on_verticalScrollBar_valueChanged(int)));
   connect(ui->output_textEdit_ascii->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(on_verticalScrollBar_valueChanged(int)));

yoz 发表于 2017-5-11 00:12:27

自己派生一个类,重载
void QTextEdit::wheelEvent(QWheelEvent * e)
然后办法就很多了。
页: [1]
查看完整版本: Qt 两QTextEdit实现滚轮同步(结贴)