How to disable automatic mnemonics in a Qt application on KDE?

故事扮演 提交于 2019-11-26 21:40:32

问题


In any Qt application on KDE when I add a QPushButton in designer and check it's text by:

void MainWindow::on_pushButton_clicked()
{
    qDebug()<<ui->pushButton->text();
}

The output is preceded by an & :

&PushButton

This behavior does not exist on Windows. It seems that Qt applications on KDE automatically add shortcuts to all push buttons, which is not desired for me. I should note that the ampersands are not created by designer and you can not see them in the.ui file. Actually when the button is added to a widget, an & is placed somewhere in it's text.

Is it possible to disable automatic mnemonics of a Qt application in anyway?


回答1:


KDEPlatformTheme plugin responsible for it.

A workaround is to add

[Development]
AutoCheckAccelerators=false

to ~/.config/kdeglobals, which prevents KDE from automatically adding accelerators.

Related bug: https://bugs.kde.org/show_bug.cgi?id=337491



来源:https://stackoverflow.com/questions/32688153/how-to-disable-automatic-mnemonics-in-a-qt-application-on-kde

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!