通知用户希望显示上下文菜单的窗口。 用户可能已在窗口中单击鼠标右键 (右键单击) 、按 Shift+F10 或按应用程序键 (上下文菜单键) 某些键盘上可用

#define WM_CONTEXTMENU                  0x007B

参数

wParam

用户右键单击鼠标的窗口的句柄。 这可以是接收消息的窗口的子窗口。 有关处理此消息的详细信息,请参阅“备注”部分。

lParam

低序单词指定鼠标单击时光标的水平位置(以屏幕坐标为单位)。

高阶单词指定鼠标单击时光标的垂直位置(以屏幕坐标为单位)。

返回值

没有返回值。

注解

窗口可以通过使用 TrackPopupMenu 或 TrackPopupMenuEx 函数显示快捷菜单来处理此消息。 若要获取水平和垂直位置,请使用以下代码。

xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);

如果窗口未显示快捷菜单,则应将此消息传递给 DefWindowProc 函数。 如果窗口是子窗口, DefWindowProc 会将消息发送到父窗口。 否则,如果指定的位置位于窗口的标题中, DefWindowProc 将显示默认快捷菜单。

DefWindowProc 在处理WM_RBUTTONUPWM_NCRBUTTONUP消息或用户键入 SHIFT+F10 时生成WM_CONTEXTMENU消息。 当用户按下并释放VK_APPS键时,也会生成WM_CONTEXTMENU消息。

例如,如果用户键入 SHIFT+F10,则上下文菜单为 -1,应用程序应在当前所选内容的位置(而不是 (xPos、yPos) )显示上下文菜单。

WM_CONTEXTMENU的更多相关文章

  1. C#调用SendMessage 用法

    函数功能:该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.该函数是应用程序和应用程序之间进行消息传递的主要手段之一.    函数原型:LRESUL ...

  2. windows消息机制详解(转载)

    消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按下键盘上的一个键都会使Windows发送一个消息给应用程序.消息本身是作为一个记录传递给应用程序的 ...

  3. C#调用Win32API

    Win32API.cs   using System;using System.Drawing;using System.Runtime.InteropServices;using Lordal.Wi ...

  4. C#程序员开发WinForm必须知道的 Window 消息大全

    不要以为下面的东西只有C++中才会用到哦! 消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按下键盘上的一个键都会使Windows发送一个消息给应用 ...

  5. Window 消息大全

    消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按下键盘上的一个键都会使Windows发送一个消息给应用程序. 消息本身是作为一个记录传递给应用程序 ...

  6. delphi中webbrowser的用法

    WebBrowser1.GoHome; //到浏览器默认主页 WebBrowser1.Refresh; //刷新 WebBrowser1.GoBack; //后退 WebBrowser1.GoForw ...

  7. Windows消息大全(转)

    原链接地址: http://www.cnblogs.com/icebutterfly/archive/2011/08/05/2128864.html 表A-1 Windows消息分布 消息范围说 明 ...

  8. 初学c# -- 学习笔记(七) RichTextBox支持GIF

    园子里许明吉博客写的一篇,刚好用到这个,写的非常好.转过来了 不过在应用中也有一些问题,win10下不能中文输入,凑合着进行了修改, 下面是原来的代码: private void button2_Cl ...

  9. [C#.net] SendMessage

    函数功能:该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.该函数是应用程序和应用程序之间进行消息传递的主要手段之一.     函数原型:LRESU ...

  10. C#之Windows消息处理

    public enum WindowsMessage:int { /// <summary> /// /// </summary> WM_NULL = 0x0000, /// ...

随机推荐

  1. Linux下命令行开启关闭触摸板

    Linux下命令行开启关闭触摸板 从设备列表中找到触摸板的设备id,调用xinput可以控制设备的开启关闭. 示例代码如下: #!/bin/bash device=`xinput list | gre ...

  2. .NET中使用RabbitMQ延时队列和死信队列

    RabbitMQ延时队列和死信队列 延时队列和死信队列 延时队列是RabbitMQ中的一种特殊队列,它可以在消息到达队列后延迟一段时间再被消费. 延时队列的实现原理是通过使用消息的过期时间和死信队列来 ...

  3. Linux驱动中的异步函数(aio_read和aio_write)

    Linux驱动中的异步函数(aio_read和aio_write) 我们可以在signal_handler使用了read和write函数处理设备文件的读写操作.然而这两个函数可以分别用aio_read ...

  4. 三层交换机vlan间路由

    sw1: [Huawei]vlan batch 10 20 [Huawei]int e0/0/1 [Huawei-Ethernet0/0/1]port link-type access [Huawei ...

  5. 千万别忽视基础!十张图带你一步步理解Java内存结构!

    作为一个Java程序员,在日常的开发中,不必像C/C++程序员那样,为每一个内存的分配而操心,JVM会替我们进行自动的内存分配和回收,方便我们开发.但是一旦发生内存泄漏或者内存溢出,如果对Java内存 ...

  6. Nuxt框架中内置组件详解及使用指南(五)

    title: Nuxt框架中内置组件详解及使用指南(五) date: 2024/7/10 updated: 2024/7/10 author: cmdragon excerpt: 摘要:本文详细介绍了 ...

  7. Netcode for Entities里如何对Ghost进行可见性筛选(1.2.3版本)

    一行代码省流:SystemAPI.GetSingleton() 当你需要按照区域.距离或者场景对Ghost进行筛选的时候,Netcode for Entities里并没有类似FishNet那样方便的过 ...

  8. 今天我们来聊Java IO模型,BIO、NIO、AIO三种常见IO模型

    一.写在开头 很久没更新喽,最近build哥一直在忙着工作,忙着写小说,都忘记学习自己的本职了,哈哈,不过现在正式回归! 我们继续学习Java的IO相关内容,之前我们了解到,所谓的IO(Input/O ...

  9. Visual Studio 必备插件集合:AI 助力开发

     一.前言 2024年AI浪潮席卷全球,编程界迎来全新的挑战与机遇.智能编程.自动化测试.代码审查,这一切都得益于AI技术的迅猛发展,它正在重塑开发者的日常,让编写代码变得更加高效.智能. 精选出最受 ...

  10. PyQt 右键菜单的实现(Qt.CustomContextMenu方式)

    从Qt文档Qt::ContextMenuPolicy的值可以看出,实现右键菜单的方式有三种,这对于所有继承于QWidget的类都是通用的,在用每一种方式实现之前都要调用QWidget::setCont ...