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

环保产品企业网站建设网站开发工程师招聘信息

环保产品企业网站建设,网站开发工程师招聘信息,深圳网站建设公司怎么样,代做网站优化1、概述 QMenu是Qt框架中的一个类,用于创建和管理菜单。它提供了丰富的接口来添加菜单项(通常是QAction对象)、子菜单以及分隔符。QMenu可以嵌入到菜单栏(QMenuBar)中,也可以作为弹出菜单(通过…
1、概述

QMenu是Qt框架中的一个类,用于创建和管理菜单。它提供了丰富的接口来添加菜单项(通常是QAction对象)、子菜单以及分隔符。QMenu可以嵌入到菜单栏(QMenuBar)中,也可以作为弹出菜单(通过调用exec()方法)使用。QMenu支持嵌套菜单,即菜单项本身可以是一个子菜单,从而创建出复杂的菜单结构。

QMenu不仅支持文本菜单项,还支持图标、快捷键和状态提示等功能,这些都可以通过QAction来设置。此外,QMenu还提供了对菜单项可见性、启用/禁用状态以及检查状态(checkable)的细粒度控制。

2、重要方法
  • addAction(QAction *action):向菜单中添加一个动作。
  • addMenu(QMenu *menu):向菜单中添加一个子菜单。
  • addSeparator():在菜单中添加一个分隔符。
  • clear():清除菜单中的所有项。
  • exec(const QPoint &pos = QPoint()):在指定位置显示菜单作为弹出菜单,并返回用户选择的动作的索引(或-1如果没有选择)。
  • setDefaultAction(QAction *action):设置菜单的默认动作,当用户按下回车键时触发。
  • setTitle(const QString &title):设置菜单的标题。
  • actions():返回菜单中所有动作的列表。

3、重要信号
  • triggered(QAction *action):当菜单中的某个动作被触发时发出此信号。
  • aboutToShow():在菜单即将显示之前发出此信号,可以用于动态调整菜单项。
  • aboutToHide():在菜单即将隐藏之前发出此信号。

需要注意的是,QMenu本身并不直接处理用户输入,而是通过QAction来响应动作。因此,大多数与QMenu交互的信号和槽都是通过QAction来实现的。

#include <QApplication>  
#include <QMainWindow>  
#include <QMenuBar>  
#include <QMenu>  
#include <QAction>  
#include <QMessageBox>  class MainWindow : public QMainWindow {  Q_OBJECT  public:  MainWindow(QWidget *parent = nullptr) : QMainWindow(parent) {  // 创建菜单栏  QMenuBar *menuBar = this->menuBar();  // 创建文件菜单  QMenu *fileMenu = menuBar->addMenu(tr("&File"));  // 创建动作  QAction *newAction = new QAction(tr("&New"), this);  newAction->setIcon(QIcon(":/icons/new.png"));  newAction->setStatusTip(tr("Create a new file"));  connect(newAction, &QAction::triggered, this, &MainWindow::onNewFile);  QAction *openAction = new QAction(tr("&Open..."), this);  openAction->setIcon(QIcon(":/icons/open.png"));  openAction->setStatusTip(tr("Open an existing file"));  connect(openAction, &QAction::triggered, this, &MainWindow::onOpenFile);  // 将动作添加到文件菜单  fileMenu->addAction(newAction);  fileMenu->addAction(openAction);  // 创建一个弹出菜单  QMenu *popupMenu = new QMenu(this);  QAction *exitAction = new QAction(tr("E&xit"), this);  exitAction->setStatusTip(tr("Exit the application"));  connect(exitAction, &QAction::triggered, qApp, &QApplication::quit);  popupMenu->addAction(exitAction);  QPushButton *btn = new QPushButton(this);setCentralWidget(btn);connect(btn, &QPushButton::clicked, this, [&, btn, popupMenu]{popupMenu->exec(btn->mapToGlobal(btn->rect().center()));});}  private slots:  void onNewFile() {  QMessageBox::information(this, tr("New File"), tr("Create a new file..."));  }  void onOpenFile() {  QMessageBox::information(this, tr("Open File"), tr("Open an existing file..."));  }  
};  int main(int argc, char *argv[]) {  QApplication app(argc, argv); MainWindow window;  window.show();  return app.exec();  
} 

觉得有帮助的话,打赏一下呗。。

           

http://www.yayakq.cn/news/479901/

相关文章:

  • 多页网站制作一件代发应该在哪个网站上做
  • 大连做网站不错的公司淘宝网页怎么制作
  • vps网站打开需要身份验证网站建设2000字论文
  • 奇墙网站建设网页编辑模式怎么打开
  • 长春做网站的申请企业邮箱步骤是什么
  • 网站建设制作设计seo优化珠海wordpress怎么用
  • 做网站用什么语言简单洛阳市做网站的
  • 张店网站建搜狗seo怎么做
  • 做一年的网站维护价格网站公司设计
  • php网站开发框架搭建网红包装设计师
  • 大型门户网站设计公司seo查询平台
  • 做网站的软件是哪个怎样做自适应网站
  • 网站 用php asp源码 比较好我附近的广告公司
  • 知名企业网站搭建网业怎么保存到桌面
  • 高档网站模板英语网站海报手抄报怎么做
  • 销售网站的优秀标准密云网站建设公司
  • 宁波品牌网站制作哪家好网网站设计
  • 个人网站建设代码网站记录登录账号怎么做
  • 网站调研方法有哪些内容网站 维护 页面
  • 建立网站的基本过程百度风云榜小说排行榜历届榜单
  • 天津网站建设方案托管设计师培训多少钱
  • 用node和vue做的网站找人做网站流程
  • 潍坊网站建设一品网络寒亭营销型网站建设
  • 亚马逊购物网站58网站开发要多少钱
  • 网站网站开发网上支付门户网站后台管理系统
  • 搭建微网站平台机顶盒视频网站建设
  • 广东建设信息网站电商数据分析软件
  • 长兴建设局网站广西省桂林市
  • 成都微信网站建设推广rpg制作大师手机版
  • 自适应网站三套代码怎么给网站做链接