通过QPlainTextEdit中的Ctrl+Wheel启用文本缩放

Enable text zoom via Ctrl+Wheel in QPlainTextEdit

本文关键字:文本 缩放 启用 Ctrl+Wheel QPlainTextEdit 中的 通过      更新时间:2023-10-16

文档提到,QPlainTextEdit在编辑键绑定和只读键绑定条目中都支持用于放大/缩小的Ctrl+Wheel键绑定。

这让我认为这个功能是开箱即用的。但是,当我执行Ctrl+Wheel时,什么都不会发生。我是否需要做一些特别的事情来打开该功能?

你可以自己做。我写了一段代码,当你按下Ctrl并使用轮子时,它可以放大或缩小

在我的情况下,我使用eventFilter

if(obj == ui->plainTextEdit && event->type() == QEvent::Wheel )
{
    QWheelEvent *wheel = static_cast<QWheelEvent*>(event);
    if( wheel->modifiers() == Qt::ControlModifier )
        if(wheel->delta() > 0)
            ui->plainTextEdit->zoomIn(2);
        else
            ui->plainTextEdit->zoomOut(2);
}

或者简单地制作textEdit readOnly

ui->plainTextEdit->setReadOnly(true);

现在您可以选择:使用被阻止的QPlainTextEdit进行缩放,或者在用户需要时进行缩放(无阻止)。