VB 动态菜单的设计

题为:菜单可以实现菜单项的增减操作。单击“添加菜单项”按钮,在文件菜单下增加标题为“文件1”的菜单项。再次单击“添加菜单项”按钮,则在文件菜单下增加标题为“文件2”的菜单... 题为:菜单可以实现菜单项的增减操作。单击“添加菜单项”按钮,在文件菜单下增加标题为“文件1”的菜单项。再次单击“添加菜单项”按钮,则在文件菜单下增加标题为“文件2”的菜单项,以此类推。若单击“删除菜单项”按钮,则删除与输入的菜单项编号对应的菜单项。添加菜单项后的运行结果如图二。
答案给出的步骤:在菜单编辑器中建立如图一的菜单,在“新建”子菜单后再创建一个分隔线,并将其命名为mcfile(0),实际上这就是建立了菜单控件数组的第一个元素。然后编写程序代码如下:
Private Sub Command1_Click()
Dim mcont As Integer
mcont = 0
mcont = mcont + 1
mcfile(0).Visible = True
Load mcfile(mcont)
mcfile(mcont).Caption = "文件" & Str(mcont)
End Sub
...
问题:不能把在菜单中,把分隔线命名为mcfile(0),每次都说命名有错,只有命名为mcfile,才行,但是这样命名后,点击“添加菜单项”无法达到题目给出的效果,菜单不能显示“文件1”,...
这道题要怎样做~\(≥▽≤)/~啦啦啦,大侠们帮帮忙( ⊙ o ⊙ )啊~~~~
展开
 我来答
szdan
2009-03-22 · TA获得超过662个赞
知道小有建树答主
回答量:287
采纳率:0%
帮助的人:0
展开全部

不能把在菜单中,把分隔线命名为mcfile(0),每次都说命名有错,只有命名为mcfile,才行,但是这样命名后,点击“添加菜单项”无法达到题目给出的效果,菜单不能显示“文件1”,... 

---------

菜单编辑器中输入名字中是不能带括号的

像这种名字中带括号的,表示它是一个控件数组,那么可以直接输入名字 mcfile ,索引处填写 0 即可(如图)

另外你给出的代码有点小问题, Dim mcont As Integer 放在过程中,表示这个变量是普通变量,当这次点击事件结束后不保存,这样下次再执行这个事件时又归零了,就无法达到逐步增加菜单的作用。可以把 Dim mcont As Integer 改为 Static mcont As Integer,这里的 Static 表示 mcont 是一个静态变量,作用就是再次执行的时候该变量的值保持为上次退出时的值,即:

Private Sub Command1_Click()

    Static mcont As Integer

    mcont = mcont + 1

    mcfile(0).Visible = True

    Load mcfile(mcont)

    mcfile(mcont).Caption = "文件" & Str(mcont)

End Sub

花安太18
2009-03-20 · TA获得超过4253个赞
知道大有可为答主
回答量:5008
采纳率:50%
帮助的人:0
展开全部
标题 文件
名称 a
索引 无
标题 新建 (子菜单)
名称 b
索引 无
标题 --------(子菜单 不可见)
名称 mcfile
索引 0

Private Sub Command1_Click()
Static mcont As Integer
mcont = mcont + 1
mcfile(0).Visible = True
Load mcfile(mcont)
mcfile(mcont).Caption = "文件" & Str(mcont)
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxz1969
2009-03-20 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8524
采纳率:33%
帮助的人:1.2亿
展开全部
把分隔线命名为Fg,再建一个菜单项命名为mcfile,索引为0,设不可见,再修改一下代码:
Dim mcont As Integer '这句放到声明中
Private Sub Command1_Click()
mcont = mcont + 1
Load mcfile(mcont)
mcfile(mcont).Visible = True
mcfile(mcont).Caption = "文件" & Str(mcont)
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式