<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 菜單和工具欄 > 原文: [http://zetcode.com/gui/vbwinforms/menustoolbars/](http://zetcode.com/gui/vbwinforms/menustoolbars/) 在 Visual Basic Winforms 教程的這一部分中,我們將討論菜單和工具欄。 菜單欄是 GUI 應用中最可見的部分之一。 它是位于各個菜單中的一組命令。 在控制臺應用中,您必須記住所有這些神秘命令,在這里,我們將大多數命令分組為邏輯部分。 有公認的標準可以進一步減少學習新應用的時間。 ## 簡單菜單 在第一個示例中,我們創建一個簡單的菜單。 ```vb ' ZetCode Mono Visual Basic Winforms tutorial ' ' This program shows a simple ' menu. It has one action, which ' will terminate the program, when ' selected. ' ' author jan bodnar ' last modified May 2009 ' website www.zetcode.com Imports System.Windows.Forms Imports System.Drawing Public Class WinVBApp Inherits Form Public Sub New Me.Text = "Simple menu" Me.Size = New Size(220, 170) Me.InitUI Me.CenterToScreen End Sub Private Sub InitUI Dim ms As New MenuStrip ms.Parent = Me Dim fileItem As New ToolStripMenuItem("&File") Dim exitItem As New ToolStripMenuItem("&Exit", Nothing, _ New EventHandler(AddressOf OnExit)) exitItem.ShortcutKeys = Keys.Control Or Keys.X fileItem.DropDownItems.Add(exitItem) ms.Items.Add(fileItem) MainMenuStrip = ms End Sub Private Sub OnExit(ByVal sender As Object, ByVal e As EventArgs) Me.Close End Sub Public Shared Sub Main Application.Run(New WinVBApp) End Sub End Class ``` 在我們的示例中,我們有一個菜單欄和一個菜單。 菜單內有一個菜單項。 如果選擇菜單項,則應用關閉。 注意如何關閉應用。 我們可以使用 `Ctrl + X` 快捷方式或按 `Alt` , `F` , `E` 鍵關閉它 。 ```vb Dim ms As New MenuStrip ``` `MenuStrip`為我們的表單創建一個菜單系統。 我們將`ToolStripMenuItem`對象添加到`MenuStrip`中,這些對象代表菜單結構中的各個菜單命令。 每個`ToolStripMenuItem`可以是您的應用的命令,也可以是其他子菜單項的父菜單。 ```vb Dim fileItem As New ToolStripMenuItem("&File") ``` 在這里,我們創建一個文件菜單。 ```vb Dim exitItem As New ToolStripMenuItem("&Exit", Nothing, _ New EventHandler(AddressOf OnExit)) ``` 此行創建退出菜單項。 ```vb exitItem.ShortcutKeys = Keys.Control Or Keys.X ``` 我們提供了退出菜單項的快捷方式。 ```vb fileItem.DropDownItems.Add(exitItem) ``` 退出菜單項將添加到菜單對象的下拉項中。 ```vb ms.Items.Add(fileItem) ``` 在這里,我們將菜單對象添加到菜單欄中。 ```vb MainMenuStrip = ms ``` `MenuStrip`已插入表格。 ![Simple menu](https://img.kancloud.cn/e7/80/e7801fb8eb759fcca1a1ba853bae6036_220x171.jpg) 圖:簡單菜單 ## 子菜單 每個菜單項也可以有一個子菜單。 這樣,我們可以將類似的命令分組。 例如,我們可以將隱藏/顯示各種工具欄(例如個人欄,地址欄,狀態欄或導航欄)的命令放置在稱為工具欄的子菜單中。 ```vb ' ZetCode Mono Visual Basic Winforms tutorial ' ' This program creates a submenu ' ' author jan bodnar ' last modified May 2009 ' website www.zetcode.com Imports System.Windows.Forms Imports System.Drawing Public Class WinVBApp Inherits Form Public Sub New Me.Text = "Submenu" Me.Size = New Size(380, 220) Me.InitUI Me.CenterToScreen End Sub Private Sub InitUI Dim ms As New MenuStrip ms.Parent = Me Dim fileItem As New ToolStripMenuItem("&File") Dim exitItem As New ToolStripMenuItem("&Exit", Nothing, _ New EventHandler(AddressOf OnExit)) exitItem.ShortcutKeys = Keys.Control Or Keys.X Dim import As New ToolStripMenuItem import.Text = "Import" Dim temp As New ToolStripMenuItem temp.Text = "Import newsfeed list..." import.DropDownItems.Add(temp) temp = New ToolStripMenuItem temp.Text = "Import bookmarks..." import.DropDownItems.Add(temp) temp = New ToolStripMenuItem temp.Text = "Import mail..." import.DropDownItems.Add(temp) fileItem.DropDownItems.Add(import) fileItem.DropDownItems.Add(exitItem) ms.Items.Add(fileItem) Me.MainMenuStrip = ms End Sub Private Sub OnExit(ByVal sender As Object, ByVal e As EventArgs) Me.Close End Sub Public Shared Sub Main Application.Run(New WinVBApp) End Sub End Class ``` 在此示例中,我們創建一個子菜單。 子菜單導入具有三個菜單項。 ```vb Dim import As New ToolStripMenuItem import.Text = "Import" ``` `ToolStripMenuItem`可以是菜單或菜單項。 在這里它將作為子菜單。 ```vb Dim temp As New ToolStripMenuItem temp.Text = "Import newsfeed list..." import.DropDownItems.Add(temp) ``` 在這里,我們創建一個菜單項并將其添加到“導入”子菜單。 ![Submenu](https://img.kancloud.cn/83/0c/830c0234823e540f977eefbca2f4af5c_380x221.jpg) 圖:子菜單 ## 檢查菜單項 下一個代碼示例演示如何創建選中的菜單項。 ```vb ' ZetCode Mono Visual Basic Winforms tutorial ' ' This program creates a checked ' menu ' ' author jan bodnar ' last modified May 2009 ' website www.zetcode.com Imports System.Windows.Forms Imports System.Drawing Public Class WinVBApp Inherits Form Dim sb As Statusbar Public Sub New Me.Text = "Check menu item" Me.Size = New Size(380, 220) Me.InitUI Me.CenterToScreen End Sub Private Sub InitUI sb = New StatusBar sb.Parent = Me sb.Text = "Ready" Dim mainMenu As New MainMenu Dim file As MenuItem = mainMenu.MenuItems.Add("&File") file.MenuItems.Add(New MenuItem("E&xit", _ New EventHandler(AddressOf OnExit), Shortcut.CtrlX)) Dim view As MenuItem = mainMenu.MenuItems.Add("&View") Dim viewStatusBar As New MenuItem("View StatusBar") viewStatusBar.Checked = True view.MenuItems.Add(viewStatusBar) Me.Menu = mainMenu AddHandler viewStatusBar.Click, AddressOf Me.ToggleStatusBar End Sub Private Sub ToggleStatusBar(ByVal sender As Object, ByVal e As EventArgs) Dim check As Boolean = sender.Checked If check sb.Visible = False sender.Checked = False Else sb.Visible = True sender.Checked = True End If End Sub Private Sub OnExit(ByVal sender As Object, ByVal e As EventArgs) Me.Close End Sub Public Shared Sub Main Application.Run(New WinVBApp) End Sub End Class ``` 我們有兩個菜單。 文件和查看。 “查看”菜單具有一個菜單項,用于切換狀態欄的可見性。 ```vb Dim mainMenu As New MainMenu ``` 在此示例中,我們使用`MainMenu`控件。 要創建菜單欄,我們可以使用`MainMenu`或`MenuStrip`控件。 后者具有一些附加功能。 ```vb viewStatusBar.Checked = True ``` 默認情況下會選中此菜單項,因為狀態欄從應用的開始就可見。 ```vb Dim check As Boolean = sender.Checked If check sb.Visible = False sender.Checked = False Else sb.Visible = True sender.Checked = True End If ``` 我們確定菜單項是否被選中。 我們根據`check`值顯示和隱藏狀態欄和復選標記。 ![Check menu item](https://img.kancloud.cn/bf/17/bf1742b2f5b16401ef6eec72f7fb45b5_380x221.jpg) 圖:選中菜單項 ## 圖像,分隔符 我們將進一步增強對`MenuStrip`控件的了解。 我們將創建一個帶有圖像的菜單項,并顯示如何使用分隔符將其分開。 ```vb ' ZetCode Mono Visual Basic Winforms tutorial ' ' This program shows how to add images and ' separators to menu items ' ' author jan bodnar ' last modified May 2009 ' website www.zetcode.com Imports System.Windows.Forms Imports System.Drawing Public Class WinVBApp Inherits Form Public Sub New Me.Text = "MenuStrip" Me.Size = New Size(250, 200) Me.InitUI Me.CenterToScreen End Sub Private Sub InitUI Dim menuStrip As New MenuStrip Dim titem1 As New ToolStripMenuItem("File") menuStrip.Items.Add(titem1) Dim titem2 As New ToolStripMenuItem("Tools") menuStrip.Items.Add(titem2) Dim subm1 As New ToolStripMenuItem("New") subm1.Image = Image.FromFile("new.png") titem1.DropDownItems.Add(subm1) Dim subm2 As New ToolStripMenuItem("Open") subm2.Image = Image.FromFile("open.png") titem1.DropDownItems.Add(subm2) titem1.DropDownItems.Add(New ToolStripSeparator) Dim subm3 As New ToolStripMenuItem("Exit") subm3.Image = Image.FromFile("exit.png") titem1.DropDownItems.Add(subm3) AddHandler subm3.Click, AddressOf Me.OnExit Controls.Add(menuStrip) MainMenuStrip = menuStrip End Sub Private Sub OnExit(ByVal sender As Object, ByVal e As EventArgs) Me.Close End Sub Public Shared Sub Main Application.Run(New WinVBApp) End Sub End Class ``` 我們的代碼示例中有兩個菜單。 文件和工具。 在文件中,我們有三個帶有圖像的菜單項。 我們還有一個分隔符。 在此示例中,PNG 圖像必須位于當前工作目錄中。 ```vb Dim subm1 As New ToolStripMenuItem("New") subm1.Image = Image.FromFile("new.png") titem1.DropDownItems.Add(subm1) ``` 在這里,我們創建第一個菜單項。 要將圖像添加到項目,我們將`Image`屬性設置為圖像。 我們使用靜態`FromFile`方法從指定的文件創建一個`Image`。 ```vb titem1.DropDownItems.Add(New ToolStripSeparator) ``` 在這里,我們向“文件”菜單添加分隔符。 ![MenuStrip](https://img.kancloud.cn/7a/92/7a9266b85848effa588217824a6a4cf2_250x201.jpg) 圖:圖像 s and separator ## 工具欄 菜單將我們可以在應用中使用的所有命令分組。 使用工具欄可以快速訪問最常用的命令。 `ToolBar`控件用于顯示`ToolBarButton`控件。 我們可以通過創建`ImageList`將圖像分配給按鈕。 然后,我們將圖像列表分配給工具欄的`ImageList`屬性,并為每個`ToolBarButton`將圖像索引值分配給`ImageIndex`屬性。 ```vb ' ZetCode Mono Visual Basic Winforms tutorial ' ' This program creates a toolbar ' ' author jan bodnar ' last modified May 2009 ' website www.zetcode.com Imports System.Windows.Forms Imports System.Drawing Public Class WinVBApp Inherits Form Dim sb As Statusbar Public Sub New Me.Text = "Toolbar" Me.Size = New Size(250, 220) Me.InitUI Me.CenterToScreen End Sub Private Sub InitUI Dim toolBar As New ToolBar toolBar.Parent = Me Dim toolBarIcons As New ImageList Dim saveb As New ToolBarButton Dim exitb As New ToolBarButton saveb.ImageIndex = 0 saveb.Tag = "Save" exitb.ImageIndex = 1 exitb.Tag = "Exit" toolBar.ImageList = toolBarIcons toolBar.ShowToolTips = True toolBar.Buttons.AddRange(New ToolBarButton() {saveb, exitb}) toolBarIcons.Images.Add(New Icon("new.ico")) toolBarIcons.Images.Add(New Icon("exit.ico")) AddHandler toolBar.ButtonClick, AddressOf Me.OnClicked End Sub Private Sub OnClicked(ByVal sender As Object, _ ByVal e As ToolBarButtonClickEventArgs) If e.Button.Tag.Equals("Exit") Me.Close End If End Sub Public Shared Sub Main Application.Run(New WinVBApp) End Sub End Class ``` 在我們的示例中,我們在工具欄上顯示了兩個按鈕。 ```vb Dim toolBar As New ToolBar ``` 在這里,我們創建`ToolBar`控件。 ```vb toolBar.ImageList = toolBarIcons ``` 創建圖像列表。 ```vb Dim saveb As New ToolBarButton Dim exitb As New ToolBarButton ``` 這是兩個工具欄按鈕。 ```vb saveb.ImageIndex = 0 ``` 我們確定圖像列表中的哪個圖標將用于保存工具欄按鈕。 ```vb toolBar.Buttons.AddRange(New ToolBarButton() {saveb, exitb}) ``` `ToolBarButton`控件已添加到工具欄。 ```vb toolBarIcons.Images.Add(New Icon("new.ico")) toolBarIcons.Images.Add(New Icon("exit.ico")) ``` 圖標將添加到圖像列表。 ```vb If e.Button.Tag.Equals("Exit") Me.Close End If ``` 如果按鈕的標簽等于`"Exit"`,我們將關閉該應用。 ![ToolBar](https://img.kancloud.cn/8c/40/8c40758566bbb05bd4177da97c48d8c9_250x221.jpg) 圖:工具欄 Visual Basic Winforms 教程的這一部分是關于菜單和工具欄的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看