可以做一个基窗体作为父窗体,父窗体上有左边的菜单栏
创新互联建站专注于企业网络营销推广、网站重做改版、青原网站定制设计、自适应品牌网站建设、html5、商城网站定制开发、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为青原等各大城市提供网站开发制作服务。
然后所有画面都继承这个父窗体,然后所有页面都会有父窗体左边菜单栏了,每个页面内容自己加控件就行 就会显示都右边的
不知你是否理解 不理解可追问 。。。
在窗体出现的情况下,由VB编程环境的菜单中选工具,在其下拉菜单下选菜单编辑器,然后按如下说明操作:
“菜单编辑器”对话框
使用菜单编辑器可以为应用程序创建自定义菜单并定义其属性。
对话框选项
“标题”
使用该选项可以输入菜单名或命令名,这些名字出现在菜单条或菜单之中。
如果想在菜单中建立分隔符条,则应在Caption 框中键入一个连字符 (-)。
为了能够通过键盘访问菜单项,可在一个字母前插入 符号。在运行时,该字母带有下划线( 符号是不可见的),按 ALT 键和该字母就可访问菜单或命令。如果要在菜单中显示 符号,则应在标题中连续输入两个 符号。
“名称”
允许为菜单项输入控件名。控件名是标识符,仅用于访问代码中的菜单项;它不会出现在菜单中。
“索引”
可指定一个数字值来确定控件在控件数组中的位置。该位置与控件的屏幕位置无关。
“快捷键”
允许为每个命令选定快捷键。
“帮助上下文 ID”
允许为 context ID 指定唯一数值。在 HelpFile 属性指定的帮助文件中用该数值查找适当的帮助主题。
“协调位置”
允许选择菜单的 NegotiatePosition 属性。该属性决定是否及如何在容器窗体中显示菜单。
“复选”
允许在菜单项的左边设置复选标记。通常用它来指出切换选项的开关状态。
“激活的”
由此选项可决定是否让菜单项对事件做出响应,而如果希望该项失效并模糊显示出来,则也可清除事件。
“可视的”
将菜单项显示在菜单上。
“显示窗口列表”
在 MDI 应用程序中,确定菜单控件是否包含一个打开的 MDI 子窗体列表。
“右箭头”
每次单击都把选定的菜单向右移一个等级。一共可以创建四个子菜单等级。
“左箭头”
每次单击都把选定的菜单向上移一个等级。一共可以创建四个子菜单等级。
“上箭头”
每次单击都把选定的菜单项在同级菜单内向上移动一个位置。
“下箭头”
“下箭头”
每次单击都把选定的菜单项在同级菜单内向下移动一个位置。
“菜单列表”
该列表框显示菜单项的分级列表。将子菜单项缩进以指出它们的分级位置或等级。
“下一个”
将选定移动到下一行。
“插入”
在列表框的当前选定行上方插入一行。
“删除”
删除当前选定行。
“确定”
关闭菜单编辑器,并对选定的最后一个窗体进行修改。菜单可以在设计时使用,但在设计时可以通过选定一个菜单,来打开菜单单击事件的“代码”窗口,而不是执行事件代码。
“取消”
关闭菜单编辑器,取消所有修改建议先学好VB 打下基础
工具\材料
电脑
1、首先在电脑上找到“VB”打开,如下图所示,接着在“VB”中点击新建,双击面板。
2、接着在打开的界面中输入代码,如下图所示,添加完成。
3、接着在选项中用鼠标找到“工具”选项并且单击鼠标,接着再点击“自定义”。
4、最好即可看到已经在软件上面成功打开菜单栏,如下图所示。
添加:(先在加一个contextMenu,再它的添加子菜单的click事件编程)
Try
’使TreeView可以被编辑
TreeView1.LabelEdit = True
‘判断你是不是选定的是不可编辑的节点,我这里工种节点不可以被编辑,只有工种下级的
各个工种名称可以被编辑
If Trim(TreeView1.SelectedNode.Text) = "工种" Then
‘添加节点
AddNode = New TreeNode("请输入新工种名字")
TreeView1.SelectedNode.Nodes.Add(AddNode)
TreeView1.ExpandAll()
AddNode.BeginEdit()
TreeView1.LabelEdit = True
NodeAdded = True
End If
Catch err As Exception
MsgBox(err.ToString)
End Try
删除与添加类似,只是如果你的节点名字从其他处(如数据库)得来,那么你还需要更新数据库
编辑:
Private Sub TreeView1_BeforeLabelEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.NodeLabelEditEventArgs) Handles TreeView1.BeforeLabelEdit
TreeView1.LabelEdit = True ‘使可以编辑
AddNode = TreeView1.SelectedNode
End Sub
Private Sub TreeView1_AfterLabelEdit(ByVal sender As Object, ByVal e As System.windows.Forms.NodeLabelEditEventArgs) Handles TreeView1.AfterLabelEdit
Try
‘此时你改完了节点名字
TreeView1.SelectedNode.EndEdit(True)
If e.Label Is Nothing Then
'do nothing
ElseIf e.Node.Text = "工种" Then ‘工种不能改
e.CancelEdit() = True
‘e.Node.Text ,e.Label.ToString 一个是改前的名字一个是该后的名字,具体哪个对
哪个请查MSDN
ElseIf Trim(e.Node.Text) "工种" And e.Node.Text e.Label.ToString Then
If MsgBox("此操作会导致当前工种中的所有人员的工种都被更改,是否确定?", MsgBoxStyle.YesNo + MsgBoxStyle.Information, "警告") = MsgBoxResult.Yes Then
。。。。 ‘我的更改
MsgBox("更改成功!", MsgBoxStyle.OKOnly, "提示")
'Call InitTree() ‘有时要重新把treeview初始化一遍,视需求定
End If
End If
Catch err As Exception
MsgBox(err.ToString)
End Try
End Sub
其他:
挡treeview得到焦点时你可以使用ContextMenu,反之ContextMenu禁用
Private Sub TreeView1_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.GotFocus
TreeView1.ContextMenu = ContextMenu1
End Sub
Private Sub TreeView1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeView1.LostFocus
TreeView1.ContextMenu = Nothing
End Sub
注意:这里没有在ContextMenu菜单添加“更改”项,而是直接更改:即左键单击节点表示
选中,再单击一下就可以编辑了,更改之后单击他处就完成更改,和你在windows中更改文
件名字相似。