Qt 中QAction用addAction添加到QToolbar不能显示怎么破

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt 中QAction用addAction添加到QToolbar不能显示怎么破相关的知识,希望对你有一定的参考价值。

    QAction类提供了抽象的用户界面action,这些action可以被放置在窗口部件中。

    应用程序可以通过菜单,工具栏按钮以及键盘快捷键来调用通用的命令。由于用户期望每个命令都能以相同的方式执行,而不管命令所使用的用户界面,

    这个时候使用action来表示这些命令就显得十分有用。

    Actions可以被添加到菜单和工具栏中,并且可以自动保持在菜单和工具栏中的同步。例如,在一个字处理软件中,如果用户在工具栏中按下了Bold按钮,那么菜单中的Bold选项就会自动被选中。

    Actions可以作为独立的对象被创建,但是我们也可以在构建菜单的时候创建它们;QMenu类包含了非常简便的方法用于创建适合用作菜单项的actions。

    QAction可以包括一个图标,菜单文本,快捷键,状态文本,"What`s This"文本以及一个tooltip。这些内容的绝大部分都可以在构造函数中设置。也可以通过setIcon(),setIconText(),setShortCut(),setStatusTip(),setWhatsThis和SetToolTip()函数分别设置。对于菜单项,我们还可以通过

    setFont()单独为它们设置font。

    可以通过QWidget::addAction()或者是QGraphicsWidget::addAction()函数将Actions添加到窗口部件上。注意,只有将Actions添加到窗口部件上之后,我们才可以使用这些actions;当actions的快捷键是全局的时候,我们也必须先将actions添加到窗口部件上。

    一旦QAction被创建了,那么就必须将它添加到相关的菜单和工具栏上,然后将它们链接到实现相应action功能的槽函数上。例如:

    openAct = new QAction(QIcon(":/images/open.png"), tr("&Open..."), this);

    openAct->setShortcuts(QKeySequence::Open);

    openAct->setStatusTip(tr("Open an existing file"));

    connect(openAct, SIGNAL(triggered()), this, SLOT(open()));

    fileMenu->addAction(openAct);

    fileToolBar->addAction(openAct);

参考技术A 我给QComboBox对象添加动作,使用addAction,但是区怎么也无法显示。。...

以上是关于Qt 中QAction用addAction添加到QToolbar不能显示怎么破的主要内容,如果未能解决你的问题,请参考以下文章

笔记:QT的菜单

qt中toolbuttontextbesideicon啥意思

qt的toolbar怎么用代码实现动作

Qt怎么设置QAction下边框

QMenu 中 QAction 的所有权

QT 选择对话框简单示例