【发布时间】:2017-11-15 03:21:43
【问题描述】:
我正在构建一个简单的桌面应用程序。目前它使用一堆按钮在表单之间来回导航。
现在我决定在顶部添加一个小的 MenuStrip 控件来帮助导航。
我目前在每个表单中都有相同的 MenuStrip,重复代码如下:
Private Sub AddEngineToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AddEngineToolStripMenuItem.Click
Dim frmShowEnginesForm = New frmShowEnginesForm()
frmShowEnginesForm.Show()
Me.Hide()
End Sub
Private Sub EnterSpecsToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EnterSpecsToolStripMenuItem.Click
Dim frmEnterEngineSpecsForm = New frmEnterEngineSpecsForm()
frmEnterEngineSpecsForm.Show()
Me.Hide()
End Sub
我希望稍微简化一下,这样如果我想添加另一个菜单项,我就不必遍历所有表单并全部更改。
有没有办法创建一种包含 MenuStrip 的父控件/表单,这样我就不必在所有表单中复制它?
谢谢!
【问题讨论】:
-
可能在
module中添加一些Sub,您将在其中以所需的形式创建MenuStrip...但是,您需要调用sub,例如Public Sub CreateMenuStrip(frm As Form)....End Sub添加处理程序等,从每个Form_Load... -
@nelek 我不太确定我是否遵循。你能发布一个示例答案吗?谢谢!
-
您可以使用菜单条和 ToolStripContiner 创建一个主窗体。然后制作您刚刚在容器中记录的其他表单面板(用户控件)。 (其实我觉得可以将表单停靠在表单中,但已经有一段时间了)