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

右键菜单和弹出菜单的区别

接触windows开发10年了,一直以为"右键菜单"和"弹出菜单"是不同的。

最近刚刚发现,这两种菜单在定义的时候和消息循环处理程序中并没有什么不同,区别只是在于windows底层显示方式。

如下是右键菜单的显示方式:


int DialogFiles::rmenu() {HMENU menu = LoadMenuA(0, (LPCSTR)IDR_MENU2);HMENU sub = GetSubMenu(menu, 0);RECT rect = { 0 };POINT pt;GetCursorPos(&pt);TrackPopupMenu(sub, TPM_LEFTBUTTON | TPM_TOPALIGN | TPM_LEFTBUTTON, pt.x, pt.y, 0, m_hwnd, 0);return 0;
}

以下是菜单栏的显示方式:

SetMenu(LoadMenu(GetModuleHandle(NULL), MAKEINTRESOURCE(IDR_MAINWINDOW)));

同时,菜单定义的资源文件如下:

在这里插入图片描述

从上图可以看出,两种菜单的定义方式相同,而显示方式的区别在于POPUP字段的处理不同。右键菜单不显示POPUP项,而菜单栏显示POPUP这一项。

http://www.lryc.cn/news/236796.html

相关文章:

  • 查询数据库DQL
  • SpringBoot中文乱码问题解决方案
  • 京东联盟flutter插件使用方法
  • python电影数据可视化分析系统的设计与实现【附源码】
  • SQLMAP --TAMPER的编写
  • 美国服务器:全面剖析其主要优点与潜在缺点
  • 验证二叉搜索树
  • Ubuntu 18.04无网络连接的n种可能办法
  • MIUI查看当前手机电池容量
  • 链动2+1模式:创新营销引领白酒产业新潮流
  • openGauss学习笔记-126 openGauss 数据库管理-设置账本数据库-归档账本数据库
  • UE 视差材质 学习笔记
  • openfeign整合sentinel出现异常
  • Java的继承
  • 十二、Docker的简介
  • 卷积神经网络(CNN)多种图片分类的实现
  • 【备忘录】Docker容器、镜像删除与资源清理命令
  • 使用 Splashtop 的开放 API 简化 IT 工作流程
  • 使用requests库进行网络爬虫:IP请求错误的解决方法
  • Web之CSS笔记
  • CentOS to KeyarchOS 系统迁移体验
  • 如何从零开始制作一本企业宣传画册?
  • Android问题笔记四十六:解决open failed: EACCES (Permission denied) 问题
  • Universal adversarial perturbations(2017 CVPR)
  • 前台查看日志功能
  • mysqlbinlog使用记录
  • 学习c#的第十八天
  • element + vue3,级联选择器实现省市区
  • 程序员的护城河-并发编程
  • 外卖小程序系统:数字化餐饮的编码之道