Qt QAction动作 您所在的位置:网站首页 diag是什么按键如何使用 Qt QAction动作

Qt QAction动作

2024-04-05 14:40| 来源: 网络整理| 查看: 265

在学习菜单栏、工具栏、状态栏之前,我们需要了解一个叫“动作”的功能实现。

文章主要来源于:https://www.devbean.net/2012/09/qt-study-road-2-menubar-toolbar-statusbar/

目录 ·动作QAction简介一、用法二、代码展示(1)、构造函数(2)、快捷键(3)、提醒文本(4)、部分结合代码 ··菜单栏一、简介二、代码解释三、运行展示 ···工具栏1、简介2、代码解释3、界面效果 结尾

·动作QAction 简介

QAction从名字上我们可以看出,这是一个类,它的功能是等待指令,执行工作。那么这个指令怎么来呢?比如菜单项、工具栏内按钮,用户在点击这些选项或按钮时,Qt得到反馈,执行指定功能。

一、用法

QAction可以设置图标、快捷键、提醒文本。

二、代码展示 (1)、构造函数

以下展示的是QAction的构造函数。

explicit QAction(QObject *parent = nullptr); explicit QAction(const QString &text, QObject *parent = nullptr); explicit QAction(const QIcon &icon, const QString &text, QObject *parent = nullptr); (2)、快捷键

快捷键源码:

void setShortcut(const QKeySequence &shortcut); QKeySequence shortcut() const; void setShortcuts(const QList &shortcuts); void setShortcuts(QKeySequence::StandardKey); QList shortcuts() const; QKeySequences类称为按键序列,也就是设置快捷键的键位。 (3)、提醒文本 void setStatusTip(const QString &statusTip); QString statusTip() const; (4)、部分结合代码 act = new QAction(QIcon("/Users/yucheng/allpic/help.png"),"帮助",this); //包括图标路径、长时间停留提示、父指针 act->setShortcut(QKeySequence::Open); act->setStatusTip("帮助文本"); connect(act, &QAction::triggered, this, &MainWindow::ActionBehavior); //建立连接 当动作被触发后,调用ActionBehavior函数 ··菜单栏 一、简介

菜单栏就是应用的最上端一行的功能选项,Mac端的菜单栏在最上方

要想使用这个方法,我们必须借助QMenu类。

二、代码解释

菜单大家 用的比较多,没什么好说的,举一个菜单例子,

act = new QAction(QIcon("/Users/yucheng/allpic/help.png"),"帮助",this); act->setShortcut(QKeySequence::Open); act->setStatusTip("帮助文本"); connect(act, &QAction::triggered, this, &MainWindow::ActionBehavior); //建立连接 当动作被触发后,调用ActionBehavior函数 QMenu * menu = this->menuBar()->addMenu("菜单"); //建立菜单 menu->addAction(act); //菜单中添加动作

有两点要说的是:

QMainWindow已经为我们提供了菜单栏,后面提及的工具栏和状态栏也是。所以我们不需要创建一个新的对象,直接使用QMainWindow中的自带菜单栏。

action中的提示文本在菜单栏中不可用。只能在工具栏中有提示。

三、运行展示 ···工具栏 1、简介

何为工具栏?

在QT中,我们使用QToolBar类来使用功能。

2、代码解释 act = new QAction(QIcon("/Users/yucheng/allpic/help.png"),"帮助",this); act->setShortcut(QKeySequence::Open); act->setStatusTip("帮助文本"); connect(act, &QAction::triggered, this, &MainWindow::ActionBehavior); //建立连接 当动作被触发后,调用ActionBehavior函数 QMenu * menu = this->menuBar()->addMenu("菜单"); //建立菜单 menu->addAction(act); //菜单中添加动作 QToolBar * tool1 = this->addToolBar("帮助"); //建立工具栏 tool1->addAction(act); //工具栏添加动作 statusBar(); //建立状态栏,用于显示文本提示 3、界面效果

当然还有菜单栏。没有截上。

结尾

由于菜单栏和工具栏的内容较多,不可能一次性学完。暂时就介绍一些基础用法。更深功能往后在看。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有