当前位置: 首页 > wzjs >正文

网站 维护方案百度关键词收录

网站 维护方案,百度关键词收录,一个网站源码值多少钱,礼品兑换网站怎么做目录 常用设置函数 多个QAction的单选设置 ​​​​​​​菜单相关类 ​​​​​​​ 系统菜单的生成和响应 使用代码添加系统菜单 使用UI设计器设计系统菜单 使用Qt设计及界面时,常用的两种方式添加菜单,第一使用UI界面添加,第二种 在…

目录

常用设置函数

多个QAction的单选设置

​​​​​​​菜单相关类

​​​​​​​ 系统菜单的生成和响应

使用代码添加系统菜单

使用UI设计器设计系统菜单


使用Qt设计及界面时,常用的两种方式添加菜单,第一使用UI界面添加,第二种 在代码中添加菜单。

常用设置函数

action->setChecked(true);   // 设置为选中状态

​​​​​​​ 多个QAction的单选设置

void MainWindow::initUi()

{

    QActionGroup* toolGroup = new QActionGroup(this);

    toolGroup->addAction(this->ui->drawLine);

    toolGroup->addAction(this->ui->drawCircle);

    toolGroup->addAction(this->ui->drawEllipse);

    toolGroup->addAction(this->ui->selectTool);

    toolGroup->addAction(this->ui->fillPolygon);

    toolGroup->addAction(this->ui->fillFence);

    toolGroup->addAction(this->ui->drawPolygon);

    toolGroup->setExclusionPolicy(QActionGroup::ExclusionPolicy::ExclusiveOptional);

}

​​​​​​​菜单相关类

QMenuBar --菜单栏类,即下图中红色区域标记,菜单栏类给窗口提供水平菜单栏,此菜单栏占用窗口上方区域,垂直高度不变,水平宽度为窗口宽度,可随窗口大小变化而变化。如下图中“测试”,“test1”,"test2"所在的栏几位QMenuBar

QMenu --菜单项,即下图中绿色区域,下图中“测试”,"test1","test2"都是一个独立的菜单,包含各个子菜单。QMenu还可以用来创建弹出菜单

QAction --子菜单,即下图中蓝色区域标记的内容,一个子菜单对应一个操作。

​​​​​​​ 系统菜单的生成和响应

使用代码添加系统菜单

示例源码:

.h文件

#ifndef     MAINWINDOW_H

#define    MAINWINDOW_H

#include  <QMainWindow>

#include  <QMenuBar>

QT_BEGIN_NAMESPACE

namespace Ui { class MainWindow; }

QT_END_NAMESPACE

class  MainWindow : public QMainWindow

{

    Q_OBJECT

public:

    MainWindow(QWidget *parent = nullptr);

    ~MainWindow();

    //菜单栏

    QMenuBar *pMenuBar;

    //菜单项

    QMenu *pMenuTest;

    QMenu *pMenuTest1;

    QMenu *pMenuTest2;

    //子菜单

    QAction *pActionTest;

    QAction *pActionTest1;

    QAction *pActionTest2;

    QAction *pActionTest3;

    QAction *pActionTest4;

    QAction *pActionTest5;

    QAction *pActionTest6;

public slots:

    //菜单响应函数

    void OnActionTest();

    void OnActionTest1();

private:

    Ui::MainWindow *ui;

};

#endif             //MAINWINDOW_H

.cpp文件

#include "mainwindow.h"

#include "ui_mainwindow.h"

#include <QDialog>

//是否启用QMainWindow自带的菜单栏

//#define USE_DEFAULT_MENU_BAR

MainWindow::MainWindow(QWidget *parent)

    : QMainWindow(parent)

    , ui(new Ui::MainWindow)

{

    ui->setupUi(this);

    //指定菜单栏

#ifdef   USE_DEFAULT_MENU_BAR

    //添加菜单栏(此处添加为的为QMainWindow自带的菜单)

    pMenuBar = this->menuBar();

#else

    //添加自定义菜单

    pMenuBar = new QMenuBar(this);

#endif

    //定义菜单项

    //&n)代表快捷方式,当窗口获得焦点时按alt+n即可打开测试菜单项

    pMenuTest = new QMenu("测试(&n)",this);

    pMenuTest1 = new QMenu("test1",this);

    pMenuTest2 = new QMenu("test2",this);

    //定义子菜单

    //&s)为子菜单快捷键,当打开该菜单项后,按下‘s’键即可响应

    pActionTest = new QAction("测试(&s)",this);

    //新建一个带图标的菜单项,图标使用资源文件中的资源

    pActionTest1 = new QAction(QIcon(":/new/prefix1/resource/soccer_ball.ico"),"测试1",this);

    pActionTest2 = new QAction("测试2",this);

    pActionTest3 = new QAction("测试3(&Y)",this);

    pActionTest4 = new QAction("测试4",this);

    pActionTest5 = new QAction("测试5(&M)",this);

    pActionTest6 = new QAction("测试6",this);

    //将菜单项添加到子菜单

    pMenuTest->addAction(pActionTest);

    pMenuTest->addAction(pActionTest1);

    //在菜单项之间添加分割线

    pMenuTest->addSeparator();

    pMenuTest->addAction(pActionTest2);

    pMenuTest1->addAction(pActionTest3);

    pMenuTest1->addAction(pActionTest4);

    pMenuTest2->addAction(pActionTest5);

    pMenuTest2->addAction(pActionTest6);

    //将子菜单添加到菜单栏

    pMenuBar->addMenu(pMenuTest);

    pMenuBar->addMenu(pMenuTest1);

    pMenuBar->addMenu(pMenuTest2);

#ifndef    USE_DEFAULT_MENU_BAR

    //当不使用QMainWindow自带的菜单栏时,必须要加上此行

    setMenuBar(pMenuBar);

#endif

    //添加菜单响应函数

    connect(pActionTest,&QAction::triggered,this,&MainWindow::OnActionTest);

    connect(pActionTest1,&QAction::triggered,this,&MainWindow::OnActionTest);

}

//菜单响应函数

void MainWindow::OnActionTest()

{

    QDialog  dlg;

    dlg.setWindowTitle("测试菜单响应");

    dlg.exec();

}

void MainWindow::OnActionTest1()

{

    QDialog dlg;

    dlg.setWindowTitle("测试菜单响应");

    dlg.exec();

}

MainWindow::~MainWindow()

{

    delete ui;

}

上面的代码中定义了两种创建系统菜单的方式:调用QMainWindow自带的菜单栏和自己新建菜单栏,由第6行定义的宏控制,显示效果相同。

  第25行为“测试”子菜单添加快捷键,当窗口获得焦点时按alt+n可展开“测试”子菜单。

  第31行为“测试”子菜单“测试”菜单项添加快捷键,当“测试”子菜单弹出后按‘s’键,程序即可做出响应。

  第33行为“测试”子菜单的“测试2”菜单项添加了图标。

  第44行为“测试”子菜单的“测试2”和“测试3”之间添加了分割线。

使用UI设计器设计系统菜单

1、添加菜单项

直接输入菜单项名称,然后回车即可。

2、为菜单项设置图标

在动作编辑器上,右键选择编辑,然后添加图标

如果想在图标栏添加该菜单的快捷图标,直接将该动作项拖放只图标栏即可。

3、事件响应函数

我们的对象名称为:actionOpenFile,默认情况我们只需要添加槽函数:

public slots:

    void on_actionOpenFile_triggered();

当菜单被点击时,该事件将出发,槽函数命名规则为:on_对象名称_triggered,如果你觉得这个名字太长,可以自定义槽函数,然后通过connect进行连接:

connect(ui.actionOpenFile,  SIGNAL(triggered()), this, SLOT(OnActionOpenFile()));

进入“设计”页面,进入如下图所示的界面,具体操作方法见如下两张图,注意:输入菜单名称后一定要按“Enter”键才能生效。

注意: 子菜单可能无法输入中文,可在Action Editor 中修改文本与提示信息

http://www.dtcms.com/wzjs/425383.html

相关文章:

  • 网站平台搭建怎么弄的18款禁用软件黄app免费
  • 凡科做的网站手机版电商网站seo
  • 手机app wap网站模板下载百度推广怎么使用教程
  • 网站建设页头的设计广州网站建设方案维护
  • 哪个小说网站版权做的好处福州seo
  • php可以做移动端网站广告免费推广网
  • 浙江网站建设有哪些百度知道网址
  • 做网站用什么网最好建网站要多少钱
  • 培训网页设计机构百度seo自动优化
  • 建个人网站做导购网站检测工具
  • 网站搭建商上海营销案例分析
  • 专做项目报告的网站2023年10月爆发新冠
  • 做兼职在线抠图网站免费获客软件
  • ppt的网站导航栏怎么做的宁波优化关键词首页排名
  • 湘icp备 网站建设 机械 湖南seo的主要内容
  • 建设银行有没有全球门户网站百度推广的效果
  • 建站要多少钱郑州网站seo外包公司
  • 建立个人网站的详细步骤百度营消 营销推广
  • 婚纱摄影网站seo方案外链提交
  • 聊城网站建设推广西安网站开发
  • 自建站服务怎么推广网址
  • asp.net做网站原理北京网站排名推广
  • 佛山网站设计步骤成都高新seo
  • 做静态头像网站广告推广文案
  • 网站建设需要学习哪些域名注册服务商
  • 网站seo找准隐迅推太原关键词优化服务
  • 上海专业微信网站建设创建一个网站需要什么
  • 微小店网站建设平台地推推广方案
  • 专业建设网站制作建站小程序
  • 布吉网站建设哪家公司靠谱如何查询百度收录