vS2010 列表控件 添加右键菜单

1、首先在需要添加消息的控件上进行右键,弹出如下对话框

2,如下图选择需要的消息响应,这里选择NM_RCLICK 消息。

3,添加如下代码

void CasteroidDlg::OnNMRClickRemotehostList(NMHDR *pNMHDR, LRESULT *pResult)
{
	LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
	// TODO: Add your control notification handler code here
	CPoint ScreenPt;
	GetCursorPos(&ScreenPt);

	CMenu m_Menu;
	m_Menu.LoadMenu(IDR_POP_MENU);
	CMenu* pPopup = m_Menu.GetSubMenu(0);//装载第一个子菜单,即我们菜单的第一列
	pPopup->TrackPopupMenu(TPM_LEFTALIGN, ScreenPt.x, ScreenPt.y, this);//弹出菜单

	*pResult = 0;
}

4,结果如下:

时间: 2024-10-07 06:32:38

vS2010 列表控件 添加右键菜单的相关文章

vS2010 列表控件 加入右键菜单

1.首先,就需要信息加入权限控制,例如,下面的对话框弹出 2,例如以下图选择须要的消息响应,这里选择NM_RCLICK 消息. 3,加入例如以下代码 </pre><pre name="code" class="cpp">void CasteroidDlg::OnNMRClickRemotehostList(NMHDR *pNMHDR, LRESULT *pResult) { LPNMITEMACTIVATE pNMItemActivate =

Duilib中为RichEdit\Edit控件添加自定义右键菜单

前言 Duilib中的RichEdit控件在使用中发现,基本上对复制.粘贴.剪切等快捷方式都是支持的,不过唯一缺点是没有右键菜单,感觉不够好,于是就想着加上右键菜单. 右键菜单基本思路是,在RichEdit的消息处理函数中对鼠标的右键消息处理,发送一个自定义的Notify消息出来,主窗口中受到这个消息后弹出自己的右键菜单. 实现方法 第一步:把鼠标右键消息转发出来 MessageHandler中修改原有代码 bool bWasHandled = true; if( (uMsg >= WM_MOU

WIN32窗口子类化----自定义Edit控件的右键菜单

前言 Win32应用程序中,子控件的消息都是分发到其父窗口的消息处理函数中去了,这对于我们需要自定义子控件的某些特性时时十分不方便的,还好,Windows为我们提供了控件子类化的相关接口API.核心的思想是:通过获取子控件的消息处理函数地址,设置子控件的消息处理函数到自己定义的函数里,也就是Get/SetWindowLong API的使用. 测试代码 这里是一个简单的测试程序,在控制台程序中创建一个对话框,然后对话框上有一个EDIT控件(资源编辑器里拖入的,不多说),子类化EDIT控件,右键弹出

WPF对某控件添加右键属性

代码创建右键属性 ContextMenu cm = new ContextMenu(); MenuItem mi = new MenuItem(); mi.Header = "打开此文件所有文件夹"; mi.Click += mi_Click; cm.Items.Add(mi); lv.ContextMenu = cm;

QT5 QTreeView添加右键菜单

C++ QT5学习--QTreeView控件创建右键菜单 QTreeView是QWidget的子类,我们再改写QTreeView类的时候,注意的是继承关系. 1.TreeView.h class TreeView : public QTreeView//记得加public 不然是私有继承 { Q_OBJECT //使用信号与槽所必需的 public: TreeView(); public slots: void slotCustomContextMenu(const QPoint &point)

c#如何仅在datatgirdview控件的头部(列名处)添加右键菜单

近期在弄ArcgisAE实习,其中有一个功能是需要操作图层的属性字段的,为了方便操作图层的属性,最好是在图层的属性表中,也就是在显示图层属性的DataGirdView控件的头部添加一个右键菜单来实现相应的功能. 在c#中有个有一个右键菜单的组建contextMenuStrip,在这个控件里面可以添加一些处理属性字段的功能,然后将这个控件赋予给DataGirdView的contextMenuStrip属性就可以了,然而这种方式在DataGirdView控件的任何地方都会将这个右键菜单显示出来,在行

VS2010/MFC对话框:为控件添加消息处理函数

为控件添加消息处理函数 创建对话框类和添加控件变量在上一讲中已经讲过,这一讲的主要内容是如何为控件添加消息处理函数. MFC为对话框和控件等定义了诸多消息,我们对它们操作时会触发消息,这些消息最终由消息处理函数处理.比如我们点击按钮时就会产生BN_CLICKED消息,修改编辑框内容时会产生EN_CHANGE消息等.一般为了让某种操作达到效果,我们只需要实现某个消息的消息处理函数. 一.添加消息处理函数 以前面的加法计算器的程序为例,说明怎样为“计算”按钮控件添加消息处理函数.添加方法列出4种:

VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)

http://www.jizhuomi.com/software/255.html 上一节中鸡啄米讲了为Ribbon Bar添加控件的方法.本节教程鸡啄米将继续完善前面的实例,讲解一些稍复杂的控件的添加方法,及如何为它们添加消息处理函数. 一.为Ribbon Bar添加更多Ribbon控件 鸡啄米将在上一节实例的基础上,继续添加下拉菜单.Check Box.Combo Box等Ribbon控件. 1.首先把“Small Button”面板上的“Click”按钮改造成一个下拉菜单.“Click”按

vs2010 无法为控件添加变量

在今天之前,我为我的工程文件制作过一个安装包,因为要重新修改项目.所以今天需要为editbox控件添加变量,但是发现无论点击dialog里的什么,都会出现下面的情况,无法为控件添加变量. 无奈开始网上查资料, 群里拜求大神帮助. 最后发现,只要将项目文件夹里的.sdf文件(这个据说相当于vc6.0中的.ncb文件)删除再重新打开项目就一切OK了.