左键也能弹出菜单

在 C#.NET中添加一个弹出式菜单是很简单的事,通过从Windows Form控件拖一个ContextMenu到窗体上,然后为相应的控件指定contextMenu属性,即可在右键点击该控件的的时候弹出菜单,设置方法如图:

** **

** 图 1 **


** 左键如何也能弹出菜单呢? **

用 ContextMenu.Show方法,显示菜单;Point结构来定义菜单与相关控件的位置。

步骤如下 (我用的是SharpDevelop,VS.Net类似):

1. 新建一个复合工程 ,选择Windows窗体工程,

** **

** 图 ** ** 2 **


2. 向窗体上拖一个 ContextMenu控件和一个Button控件。

ContextMenu的name改为MYContextMenu,并添加几个菜单项。

把 button的name改为Mybutton,size设为(100,80)我这里就以Button控件为例,其他的控件方法类似。

** **

** 图 3 **



3. 为按钮添加事件

void ** MYButtonClick ** ( object sender , System . EventArgs e )

{

Point p = ** new ** ** Point ** ( 0 , 0 );

** this ** . MYcontextMenu . ** Show ** ( MYbutton , p );

}

编译,运行结果。在左键点击按钮后弹出了菜单

** **

** 图 4 **


4. 注意到上面代码中的 Point结构,Point结构 表示在二维平面中定义点的、整数 x 和 y 坐标的有序对。上面是( 0,0 ) , 不防改成( 50,40 )看是否显示在中间。

Show 方法的定义 public void Show(Control control ,Point pos ); 参数 :一个 Control 对象,它指定与此快捷菜单相关联的控件。 一个 Point 对象,它指定要显示菜单的位置的坐标。相对于 _ control _ 参数中指定的控件的工作区坐标来指定这些坐标

** 图 ** ** 5 **

5 .至此我们的弹出菜单就完成了。 : )

Published At
Categories with Web编程
Tagged with
comments powered by Disqus