VS开发——各菜单栏对比

1、contextmenustrip:上下文菜单(鼠标右键菜单)

2、menustrip:普通(窗体)菜单

3、statusStrip状态栏(底部)

4、toolStrip工具栏,可导入ico图标

简单来说,就是版本不同,只不过是升级后建议功能更加强大的ContextMenuStrip罢了,升级后的元件功能更强 。

ContextMenu是VS2005里的,而ContextMenuStrip是VS2008以后的版本里面的。

ContextMenuStrip 替换 ContextMenu,

【1】可以将 ContextMenuStrip 与任何控件关联,单击鼠标右键会自动显示快捷菜单。

【2】可以通过使用 Show 方法以编程方式显示 ContextMenuStrip。

【3】ContextMenuStrip 支持可取消的 Opening 和 Closing 事件以处理动态填充和多次单击方案。

【4】ContextMenuStrip 支持图像、菜单项复选状态、文本、访问键、快捷键和级联菜单。 

尽管 ContextMenuStrip 对以前版本的 ContextMenu 控件的功能进行了替换和添加,但考虑到向后兼容性和将来的使用(如果的确需要),仍然保留了 ContextMenu。

建议采用ContextMenuStrip

菜单开发

	Private Sub LVLine_MouseClick(sender As Object, e As MouseEventArgs) Handles LVLine.MouseClick
		If e.Button = MouseButtons.Right Then
			'Me.ContextMenuStrip1.Show(Me, PointToClient(Cursor.Position))

			'动态菜单
			Dim cms As ContextMenuStrip = New ContextMenuStrip()
			Dim i As Integer

			For i = 1 To 3
				Dim tsm As ToolStripMenuItem = New ToolStripMenuItem(i.ToString())
				Dim j As Integer
				For j = 1 To 2
					Dim tsmz As ToolStripMenuItem = New ToolStripMenuItem(j.ToString())
					tsmz.Name = i & "," & j
					tsm.DropDownItems.Add(tsmz)
					AddHandler tsmz.Click, AddressOf Me.cms_Click '绑定事件

				Next
				cms.Items.Add(tsm)
			Next
			Me.LVLine.ContextMenuStrip = cms  '这样就能直接绑定右键菜单,点击鼠标右键就能直接打开

		End If
	End Sub

调用菜单

单纯通过右键的方式打开已经存在的菜单控件

	Private Sub LVLine_MouseClick(sender As Object, e As MouseEventArgs) Handles LVLine.MouseClick
		If e.Button = MouseButtons.Right Then
			'Me.ContextMenuStrip1.Show(Me, PointToClient(Cursor.Position))
		End If
	End Sub

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值