在程序中添加菜单项[英] Add menu items in program

问题描述

我编写了一个程序,从文件中读取菜单项.但是我有问题
当我单击一个菜单项时,我希望它将该菜单项标记为已选中,但我不能
访问该项目的菜单对象以查看女巫对象被选中.

这是从数组中读取项目并创建
的子过程菜单项.当其中一个
时,数组包含更多信息以在程序中使用项目被选中.

Dim finisharray(,) As String '' 设置在 sub 的形式下.

将 FilRow() 调暗为字符串

将 n 调暗为整数

对于 n = 0 到 5

FilRow = Split(finisharray(n, 1), "=")

如果 FilRow(0) = ""然后退出

Dim windowMenu As ToolStripMenuItem = MenuStrip1.Items(1)

Dim windowNewMenu As New ToolStripMenuItem(Trim(FilRow(1)), Nothing, New
EventHandler(AddressOf windowNewMenu_Click))

windowMenu.DropDownItems.Add(windowNewMenu)

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowImageMargin = False

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowCheckMargin = True

如果 My.Settings.SelFlash <""那么

If My.Settings.SelFlash = LCase(Trim(FilRow(1))) 那么

windowNewMenu.Checked = True

结束如果

其他

My.Settings.SelFlash = LCase(Trim(FilRow(1)))

windowNewMenu.Checked = True

结束如果

Next

推荐答案

顺便说一下我用的是VB 2005

"PetterL"<pe**********@hotmail.com 在留言中写道
新闻:%2****************@TK2MSFTNGP03.phx.gbl...
>我编写了一个程序,从文件中读取菜单项.但是我有问题
当我单击一个菜单项时,我希望它将该菜单项标记为已选中,但我无法
访问该项目的菜单对象以查看女巫对象已被选中.

这是从数组中读取项目并创建的子过程
菜单项.该数组包含更多信息以供程序使用时
的项目被选中.

Dim finisharray(,) As String '' 设置在 sub 的形式下.

将 FilRow() 调暗为字符串

将 n 调暗为整数

对于 n = 0 到 5

FilRow = Split(finisharray(n, 1), "=")

如果 FilRow(0) = ""然后退出

Dim windowMenu As ToolStripMenuItem = MenuStrip1.Items(1)

Dim windowNewMenu As New ToolStripMenuItem(Trim(FilRow(1)), Nothing, New
EventHandler(AddressOf windowNewMenu_Click))

windowMenu.DropDownItems.Add(windowNewMenu)

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowImageMargin = False

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowCheckMargin = True

如果 My.Settings.SelFlash <""那么

If My.Settings.SelFlash = LCase(Trim(FilRow(1))) 那么

windowNewMenu.Checked = True

结束如果

其他

My.Settings.SelFlash = LCase(Trim(FilRow(1)))

windowNewMenu.Checked = True

结束如果

接下来



PetterL 写道:
顺便说一句,我正在使用 VB 2005

"PetterL"<pe**********@hotmail.com 在留言中写道
新闻:%2****************@TK2MSFTNGP03.phx.gbl...
>我编写了一个程序,从文件中读取菜单项.但是我有问题
当我单击一个菜单项时,我希望它将该菜单项标记为已选中,但我无法
访问该项目的菜单对象以查看女巫对象已被选中.

这是从数组中读取项目并创建
菜单项的子过程.该数组包含更多信息,以便在选择其中一个
时在程序中使用.

Dim finisharray(,) As String '' 设置在表单 sub 下.

Dim FilRow() As String

Dim n As Integer

对于 n = 0 到 5

FilRow = Split(finisharray(n, 1), "=")

如果 FilRow(0) = "")然后退出

Dim windowMenu As ToolStripMenuItem = MenuStrip1.Items(1)
Dim windowNewMenu As New ToolStripMenuItem(Trim(FilRow(1)), Nothing, New
EventHandler(AddressOf windowNewMenu_Click))

windowMenu.DropDownItems.Add(windowNewMenu)

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowImageMargin = False

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowCheckMargin = True

If My.Settings.SelFlash <""Then

If My.Settings.SelFlash = LCase(Trim(FilRow(1))) Then

windowNewMenu.Checked = True

End If

否则

My.Settings.SelFlash = LCase(Trim(FilRow(1)))

windowNewMenu.Checked = True

如果结束

下一个


在windowNewMenu_Click中的sender参数应该是
单击的 ToolStripMenuItem.你应该可以设置
检查属性或切换它.

比如:

public sub windowNewMenu_Click(sender as object, e As System.EventArgs)
将 tsmi 调暗为 ToolStripMenuItem=ctype(sender,ToolStripMenuItem)
tsmi.checked=true
结束子

LS

如何取消选中所有以前的项目,一次只能选中一项.

"劳埃德·辛"<a@b.c写在消息中
新闻:uY**************@TK2MSFTNGP03.phx.gbl...
PetterL 写道:
>顺便说一句,我正在使用 VB 2005

"PetterL"<pe**********@hotmail.com 在消息中写道
新闻:%2****************@TK2MSFTNGP03.phx.gbl...
>>我编写了一个程序,从文件中读取菜单项.但是我有
当我单击一个菜单项时遇到问题,我希望它将该菜单项标记为已选中
但我无法访问该项目的菜单对象以查看女巫对象被选中
.

这是从数组中读取项目并创建
菜单项的子过程.当
其中一项被选中时,该数组包含更多信息以供程序使用.

Dim finisharray(,) As String '' 设置在表单子下.

Dim FilRow() As String

Dim n As Integer

对于 n = 0 到 5

FilRow = Split(finisharray(n, 1), "=")

如果 FilRow(0) = "")然后退出

Dim windowMenu As ToolStripMenuItem = MenuStrip1.Items(1)
Dim windowNewMenu As New ToolStripMenuItem(Trim(FilRow(1)), Nothing, New
EventHandler(AddressOf windowNewMenu_Click))

windowMenu.DropDownItems.Add(windowNewMenu)

CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowImageMargin =


CType(windowMenu.DropDown, ToolStripDropDownMenu).ShowCheckMargin = True

If My.Settings.SelFlash <""Then

If My.Settings.SelFlash = LCase(Trim(FilRow(1))) Then

windowNewMenu.Checked = True

End If

否则

My.Settings.SelFlash = LCase(Trim(FilRow(1)))

windowNewMenu.Checked = True

如果结束

下一个


在windowNewMenu_Click中的sender参数应该是
单击的 ToolStripMenuItem.你应该可以设置检查
属性或切换它.

比如:

public sub windowNewMenu_Click(sender as object, e As System.EventArgs)
将 tsmi 调暗为 ToolStripMenuItem=ctype(sender,ToolStripMenuItem)
tsmi.checked=true
结束子

LS


本文地址:https://www.itbaoku.cn/post/1050746.html