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

廊坊网站制作公司汽油价格最新调整最新消息

廊坊网站制作公司,汽油价格最新调整最新消息,哪些网站可以做设计软件,企业电子网站建设Qt鼠标右键弹出弹窗退出 1、鼠标右键实现1.1 重写鼠标点击事件1.2 添加头文件1.3 添加定义2、添加菜单2.1添加菜单头文件2.2创建菜单对象2.3 显示菜单 3、添加动作3.1添加动作资源文件3.2 添加头文件3.3 创建退出动作对象3.4菜单添加动作对象 4、在当前鼠标位置显示菜单4.1当前…

Qt鼠标右键弹出弹窗退出

  • 1、鼠标右键实现
  • 1.1 重写鼠标点击事件
  • 1.2 添加头文件
  • 1.3 添加定义
  • 2、添加菜单
    • 2.1添加菜单头文件
    • 2.2创建菜单对象
    • 2.3 显示菜单
  • 3、添加动作
    • 3.1添加动作资源文件
    • 3.2 添加头文件
    • 3.3 创建退出动作对象
    • 3.4菜单添加动作对象
  • 4、在当前鼠标位置显示菜单
    • 4.1当前鼠标位置显示菜单
  • 5、新增菜单被触发后槽函数,并连接信号与槽
  • 6、实现槽函数
    • 6.1 添加弹窗头文件
    • 6.2 添加弹窗资源文件
    • 6.3槽函数实现
  • 7、.h文件和.cpp文件
    • 7.1 .h文件
    • 7.2 .cpp文件
  • 8、总结

1、鼠标右键实现

1.1 重写鼠标点击事件

protected:void mousePressEvent(QMouseEvent *event) override;          //重写鼠标点击事件

在这里插入图片描述

1.2 添加头文件

在这里插入图片描述

1.3 添加定义

//鼠标点击事件
void wearherMainInterface::mousePressEvent(QMouseEvent *event)
{if(event->button() == Qt::RightButton){}
}

2、添加菜单

2.1添加菜单头文件

在这里插入图片描述

2.2创建菜单对象

QMenu *quitMenu;            //创建退出菜单指针
quitMenu = new QMenu(this);     //创建菜单对象

2.3 显示菜单

//鼠标点击事件
void wearherMainInterface::mousePressEvent(QMouseEvent *event)
{if(event->button() == Qt::RightButton){quitMenu->exec();           //显示菜单}
}

3、添加动作

3.1添加动作资源文件

先去网站下载图标

图标网站链接

下载图标

在这里插入图片描述

下载的图标剪切到你的资源文件夹下

在这里插入图片描述

添加现有文件,没有资源文件要自己新建一个资源文件

在这里插入图片描述
在这里插入图片描述

3.2 添加头文件

在这里插入图片描述

3.3 创建退出动作对象

QAction *quitAction = new QAction(QIcon(":/widdgetMainInterface/exit.png"),"退出",this);

3.4菜单添加动作对象

quitMenu->addAction(quitAction);             //菜单添加动作对象

4、在当前鼠标位置显示菜单

4.1当前鼠标位置显示菜单

//鼠标点击事件
void wearherMainInterface::mousePressEvent(QMouseEvent *event)
{if(event->button() == Qt::RightButton){quitMenu->exec(QCursor::pos());           //当前鼠标位置显示菜单}
}

5、新增菜单被触发后槽函数,并连接信号与槽

在这里插入图片描述

//连接菜单被触发的信号与槽
connect(quitMenu,&QMenu::triggered,this,&wearherMainInterface::quitMenuTriggered);  

6、实现槽函数

6.1 添加弹窗头文件

在这里插入图片描述

6.2 添加弹窗资源文件

跟上面步骤一样

6.3槽函数实现

//菜单被触发后槽函数
void wearherMainInterface::quitMenuTriggered()
{QMessageBox quitMes;                        //创建退出弹窗对象quitMes.setWindowTitle("关闭界面");          //弹窗标题quitMes.setWindowIcon(QIcon(":/widdgetMainInterface/exit.png"));        //设置窗口图标quitMes.setIcon(QMessageBox::Warning);      //弹窗图片quitMes.setText("是否关闭弹窗");              //弹窗文本quitMes.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel);      //设置Ok和Cancle两个按钮quitMes.setButtonText(QMessageBox::Ok, "确认");           //Ok改为确认quitMes.setButtonText(QMessageBox::Cancel,"取消");        //Cancle改为取消int result = quitMes.exec();       //显示信息框等待用户交互//如果用户选择了Okif(result == QMessageBox::Ok){this->close();          //关闭界面}else    //用户取消什么都不做{}  
}

7、.h文件和.cpp文件

7.1 .h文件

#ifndef WEARHERMAININTERFACE_H
#define WEARHERMAININTERFACE_H#include <QWidget>
#include <QMouseEvent>
#include <QMenu>
#include <QAction>
#include <QMessageBox>namespace Ui {
class wearherMainInterface;
}class wearherMainInterface : public QWidget
{Q_OBJECTpublic:explicit wearherMainInterface(QWidget *parent = nullptr);~wearherMainInterface();protected:void mousePressEvent(QMouseEvent *event) override;          //重写鼠标点击事件private slots:void on_quitPushButton_clicked();               //退出按钮void quitMenuTriggered();                       //菜单被触发后处理槽函数private:Ui::wearherMainInterface *ui;QMenu *quitMenu;            //创建退出菜单指针};#endif // WEARHERMAININTERFACE_H

7.2 .cpp文件

#include "wearhermaininterface.h"
#include "ui_wearhermaininterface.h"wearherMainInterface::wearherMainInterface(QWidget *parent) :QWidget(parent),ui(new Ui::wearherMainInterface)
{ui->setupUi(this);quitMenu = new QMenu(this);     //创建菜单对象QAction *quitAction = new QAction(QIcon(":/widdgetMainInterface/exit.png"),"退出",this);quitMenu->addAction(quitAction);             //菜单添加动作对象//连接菜单被触发的信号与槽connect(quitMenu,&QMenu::triggered,this,&wearherMainInterface::quitMenuTriggered);}wearherMainInterface::~wearherMainInterface()
{delete ui;
}//鼠标点击事件
void wearherMainInterface::mousePressEvent(QMouseEvent *event)
{if(event->button() == Qt::RightButton){quitMenu->exec(QCursor::pos());           //当前鼠标位置显示菜单}
}//退出按钮
void wearherMainInterface::on_quitPushButton_clicked()
{QMessageBox quitMes;                        //创建退出弹窗对象quitMes.setWindowTitle("关闭界面");          //弹窗标题quitMes.setWindowIcon(QIcon(":/widdgetMainInterface/MesPanda.png"));        //设置窗口图标quitMes.setIcon(QMessageBox::Warning);      //弹窗图片quitMes.setText("是否关闭弹窗");              //弹窗文本quitMes.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel);      //设置Ok和Cancle两个按钮quitMes.setButtonText(QMessageBox::Ok, "确认");           //Ok改为确认quitMes.setButtonText(QMessageBox::Cancel,"取消");        //Cancle改为取消int result = quitMes.exec();       //显示信息框等待用户交互//如果用户选择了Okif(result == QMessageBox::Ok){this->close();          //关闭主界面}else    //用户取消什么都不做{}
}//菜单被触发后槽函数
void wearherMainInterface::quitMenuTriggered()
{QMessageBox quitMes;                        //创建退出弹窗对象quitMes.setWindowTitle("关闭界面");          //弹窗标题quitMes.setWindowIcon(QIcon(":/widdgetMainInterface/MesPanda.png"));        //设置窗口图标quitMes.setIcon(QMessageBox::Warning);      //弹窗图片quitMes.setText("是否关闭弹窗");              //弹窗文本quitMes.setStandardButtons(QMessageBox::Ok | QMessageBox::Cancel);      //设置Ok和Cancle两个按钮quitMes.setButtonText(QMessageBox::Ok, "确认");           //Ok改为确认quitMes.setButtonText(QMessageBox::Cancel,"取消");        //Cancle改为取消int result = quitMes.exec();       //显示信息框等待用户交互//如果用户选择了Okif(result == QMessageBox::Ok){this->close();          //关闭界面}else    //用户取消什么都不做{}
}

8、总结

以上就是Qt实现鼠标右键弹出弹窗退出的整个过程了,浏览过程中,如若发现错误,欢

迎大家指正,有问题的可以评论区留言或者私信。 最后,如果大家觉得有所帮助的话,

可以点个赞,谢谢大家!梦虽遥,追则能达;愿虽艰,持则可圆!
Qt实现鼠标右键弹出弹窗退出完成!
http://www.dtcms.com/wzjs/384622.html

相关文章:

  • 网站建设公司河南广州新一期lpr
  • 汕头网站建设技术支持代发广告平台
  • 做缓网站网推
  • 国外网站问题软文营销的经典案例
  • 网站建设方案书的内容网络推广公司哪家好
  • 快速做网站的方法厨师培训学校
  • wordpress菜单小图标关于进一步优化
  • wordpress开发的主流架构搜狗seo刷排名软件
  • 烟台网站制作步骤直通车怎么开
  • wordpress获取分类的文章列表seo排名工具给您好的建议下载官网
  • 海丰网站建设百度搜索指数在线查询
  • 网站开发如何运用form表单网络广告策划书模板范文
  • 简单旅游网站模板下载网络推广和网络营销的区别
  • 服务平台入口win10系统优化软件哪个好
  • 视频一页网站怎么做免费发布广告信息平台
  • 北京做电商网站设计营销网页设计公司
  • 模板网站是什么意思游戏推广怎么快速拉人
  • 番禺网站建设外包西安seo按天收费
  • 教育网站建设市场分析计划书杭州百度
  • 网站站群建设重庆百度小额贷款有限公司
  • 小公司让我用织梦做网站网上推广赚钱方法
  • 义乌门户网站建设营销策划案
  • 描述一下网站建设的基本流程百度极速版下载安装
  • 网站建设收费详情微信公众号推广网站
  • 网站建设邀标方案百度广告费
  • 网站改版的几个建议网站推广公司黄页
  • 推荐盐城网站建设seo排名赚挂机
  • 做网站营销公司有哪些网推项目平台
  • wordpress 图片网站舆情监测系统排名
  • 商城网站设计教程网站排名优化软件哪家好