<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 菜單和工具欄 > [http://zetcode.com/tutorials/ironpythontutorial/menustoolbars/](http://zetcode.com/tutorials/ironpythontutorial/menustoolbars/) 在 IronPython Mono Winforms 教程的這一部分中,我們將討論菜單和工具欄。 菜單欄是 GUI 應用中最可見的部分之一。 它是位于各個菜單中的一組命令。 在控制臺應用中,您必須記住所有這些神秘命令,在這里,我們將大多數命令分組為邏輯部分。 有公認的標準可以進一步減少學習新應用的時間。 ## 簡單菜單 在第一個示例中,我們創建一個簡單的菜單。 `simplemenu.py` ```py #!/usr/bin/ipy import clr clr.AddReference("System.Windows.Forms") clr.AddReference("System.Drawing") from System.Windows.Forms import Application, Form from System.Windows.Forms import Keys, MenuStrip, ToolStripMenuItem from System.Drawing import Size class IForm(Form): def __init__(self): self.Text = 'Simple Menu' self.Size = Size(250, 200) ms = MenuStrip() ms.Parent = self filem = ToolStripMenuItem("&File") exit = ToolStripMenuItem("&Exit", None, self.OnExit) exit.ShortcutKeys = Keys.Control | Keys.X filem.DropDownItems.Add(exit) ms.Items.Add(filem) self.MainMenuStrip = ms self.CenterToScreen() def OnExit(self, sender, event): self.Close() Application.Run(IForm()) ``` 在我們的示例中,我們有一個菜單欄和一個菜單。 菜單內有一個菜單項。 如果選擇菜單項,則應用關閉。 注意如何關閉應用。 我們可以使用 `Ctrl + X` 快捷方式或按 `Alt + F + E` 鍵關閉它 。 ```py ms = MenuStrip() ``` `MenuStrip`為我們的表單創建一個菜單系統。 我們將`ToolStripMenuItem`對象添加到`MenuStrip`,它們表示菜單結構中的各個菜單命令。 每個`ToolStripMenuItem`可以是您的應用的命令,也可以是其他子菜單項的父菜單。 ```py filem = ToolStripMenuItem("&File") ``` 在這里,我們創建一個菜單。 ```py exit = ToolStripMenuItem("&Exit", None, self.OnExit) ``` 此行創建退出菜單項。 ```py exit.ShortcutKeys = Keys.Control | Keys.X ``` 我們提供了退出菜單項的快捷方式。 ```py filem.DropDownItems.Add(exit) ``` 退出菜單項將添加到菜單對象的下拉項中。 ```py ms.Items.Add(filem) ``` 在這里,我們將菜單對象添加到菜單欄中。 ```py self.MainMenuStrip = ms ``` `MenuStrip`已插入表格。 ![Simple menu](https://img.kancloud.cn/40/90/409048424a06174dd11de81db419db16_250x201.jpg) 圖:簡單菜單 ## 子菜單 每個菜單項也可以有一個子菜單。 這樣,我們可以將類似的命令分組。 例如,我們可以將隱藏或顯示各種工具欄(例如個人欄,地址欄,狀態欄或導航欄)的命令放入稱為工具欄的子菜單中。 `submenu.py` ```py #!/usr/bin/ipy import clr clr.AddReference("System.Windows.Forms") clr.AddReference("System.Drawing") from System.Windows.Forms import Application, Form from System.Windows.Forms import MenuStrip, ToolStripMenuItem from System.Drawing import Size class IForm(Form): def __init__(self): self.Text = 'Simple Menu' self.Size = Size(380, 200) ms = MenuStrip() ms.Parent = self filem = ToolStripMenuItem("&File") exit = ToolStripMenuItem("&Exit", None, self.OnExit) importm = ToolStripMenuItem() importm.Text = "Import" filem.DropDownItems.Add(importm) temp = ToolStripMenuItem() temp.Text = "Import newsfeed list..." importm.DropDownItems.Add(temp) temp = ToolStripMenuItem() temp.Text = "Import bookmarks..." importm.DropDownItems.Add(temp) temp = ToolStripMenuItem() temp.Text = "Import mail..." importm.DropDownItems.Add(temp) filem.DropDownItems.Add(exit) ms.Items.Add(filem) self.MainMenuStrip = ms self.CenterToScreen() def OnExit(self, sender, event): self.Close() Application.Run(IForm()) ``` 在此示例中,我們創建一個子菜單。 子菜單導入具有三個菜單項。 ```py importm = ToolStripMenuItem() importm.Text = "Import" ``` `ToolStripMenuItem`可以是菜單或菜單項。 在這里它將作為子菜單。 ```py temp = ToolStripMenuItem() temp.Text = "Import newsfeed list..." importm.DropDownItems.Add(temp) ``` 在這里,我們創建一個菜單項并將其添加到“導入”子菜單。 ![Submenu](https://img.kancloud.cn/35/c3/35c3ea33b9be46722b9c51d16e0870e6_380x201.jpg) 圖:子菜單 ## 檢查菜單項 下一個代碼示例演示如何創建選中的菜單項。 `checkmenuitem.py` ```py #!/usr/bin/ipy import clr clr.AddReference("System.Windows.Forms") clr.AddReference("System.Drawing") from System.Windows.Forms import Application, Form, StatusBar from System.Windows.Forms import Shortcut, MainMenu, MenuItem from System.Drawing import Size class IForm(Form): def __init__(self): self.Text = 'Simple Menu' self.sb = StatusBar() self.sb.Parent = self self.sb.Text = "Ready" mainMenu = MainMenu() filem = mainMenu.MenuItems.Add("&File") filem.MenuItems.Add(MenuItem("E&xit", self.OnExit, Shortcut.CtrlX)) view = mainMenu.MenuItems.Add("&View") self.viewStatusBar = MenuItem("View StatusBar") self.viewStatusBar.Checked = True self.viewStatusBar.Click += self.ToggleStatusBar view.MenuItems.Add(self.viewStatusBar) self.Menu = mainMenu self.Size = Size(250, 200) self.CenterToScreen() def OnExit(self, sender, event): self.Close() def ToggleStatusBar(self, sender, event): check = self.viewStatusBar.Checked if (check): self.sb.Visible = False self.viewStatusBar.Checked = False else: self.sb.Visible = True self.viewStatusBar.Checked = True Application.Run(IForm()) ``` 我們有兩個菜單:“文件”和“查看”。 “查看”菜單具有一個菜單項,用于切換狀態欄的可見性。 ```py mainMenu = MainMenu() ``` 在此示例中,我們使用`MainMenu`控件。 要創建菜單欄,我們可以使用`MainMenu`或`MenuStrip`控件。 后者具有一些附加功能。 ```py self.viewStatusBar.Checked = True ``` 默認情況下會選中此菜單項,因為狀態欄從應用的開始就可見。 ```py check = self.viewStatusBar.Checked if (check): self.sb.Visible = False self.viewStatusBar.Checked = False else: self.sb.Visible = True self.viewStatusBar.Checked = True ``` 我們確定菜單項是否被選中。 我們根據`check`值顯示和隱藏狀態欄和復選標記。 ![Check menu item](https://img.kancloud.cn/e1/51/e151f347d320f7e5a9028d085ebc60d2_250x201.jpg) 圖:選中菜單項 ## 圖像,分隔符 我們將進一步增強對`MenuStrip`控件的了解。 我們將創建一個帶有圖像的菜單項,并顯示如何使用分隔符將其分開。 `menustrip.py` ```py #!/usr/bin/ipy import clr clr.AddReference("System.Windows.Forms") clr.AddReference("System.Drawing") from System.Windows.Forms import Application, Form, MenuStrip from System.Windows.Forms import ToolStripMenuItem, ToolStripSeparator from System.Drawing import Size, Image class IForm(Form): def __init__(self): self.Text = 'MenuStrip' self.Size = Size(250, 200) menuStrip = MenuStrip() titem1 = ToolStripMenuItem("File") menuStrip.Items.Add(titem1) titem2 = ToolStripMenuItem("Tools") menuStrip.Items.Add(titem2) subm1 = ToolStripMenuItem("New") subm1.Image = Image.FromFile("new.png") titem1.DropDownItems.Add(subm1) subm2 = ToolStripMenuItem("Open") subm2.Image = Image.FromFile("open.png") titem1.DropDownItems.Add(subm2) titem1.DropDownItems.Add(ToolStripSeparator()) subm3 = ToolStripMenuItem("Exit") subm3.Image = Image.FromFile("exit.png") titem1.DropDownItems.Add(subm3) subm3.Click += self.OnExit self.Controls.Add(menuStrip) self.MainMenuStrip = menuStrip self.CenterToScreen() def OnExit(self, sender, event): self.Close() Application.Run(IForm()) ``` 在代碼示例中,我們有兩個菜單:“文件”和“工具”。 在文件中,我們有三個帶有圖像的菜單項。 我們還有一個分隔符。 在此示例中,png 圖像必須位于當前工作目錄中。 ```py subm1 = ToolStripMenuItem("New") subm1.Image = Image.FromFile("new.png") titem1.DropDownItems.Add(subm1) ``` 在這里,我們創建第一個菜單項。 要將圖像添加到項目,我們將`Image`屬性設置為圖像。 我們使用`FromFile()`方法從指定的文件創建一個`Image`。 ```py titem1.DropDownItems.Add(ToolStripSeparator()) ``` 在這里,我們向“文件”菜單添加分隔符。 ![MenuStrip](https://img.kancloud.cn/7a/92/7a9266b85848effa588217824a6a4cf2_250x201.jpg) 圖:圖像 s and separator ## 工具欄 菜單將我們可以在應用中使用的所有命令分組。 使用工具欄可以快速訪問最常用的命令。 `ToolBar`控件用于顯示`ToolBarButton`控件。 我們可以通過創建`ImageList`將圖像分配給按鈕。 然后,我們將圖像列表分配給工具欄的`ImageList`屬性,并為每個`ToolBarButton`將圖像索引值分配給`ImageIndex`屬性。 `toolbar.py` ```py #!/usr/bin/ipy import clr clr.AddReference("System.Windows.Forms") clr.AddReference("System.Drawing") clr.AddReference("System") from System.Windows.Forms import Application, Form from System.Windows.Forms import ToolBar, ToolBarButton, ImageList from System.Drawing import Size, Icon class IForm(Form): def __init__(self): self.Text = 'Simple ToolBar' self.Size = Size(250, 200) toolBar = ToolBar() toolBarIcons = ImageList() save = ToolBarButton() exit = ToolBarButton() save.ImageIndex = 0 save.Tag = "Save" exit.ImageIndex = 1 exit.Tag = "Exit" toolBar.ImageList = toolBarIcons toolBar.ShowToolTips = True toolBar.Buttons.AddRange((save, exit)) toolBar.ButtonClick += self.OnClicked toolBarIcons.ImageSize = Size(16, 16) toolBarIcons.Images.Add(Icon("new.ico")) toolBarIcons.Images.Add(Icon("exit.ico")) self.Controls.Add(toolBar) self.CenterToScreen() def OnClicked(self, sender, event): if event.Button.Tag == "Exit": self.Close() Application.Run(IForm()) ``` 在我們的示例中,我們在工具欄上顯示了兩個按鈕。 ```py toolBar = ToolBar() ``` 在這里,我們創建`ToolBar`控件。 ```py toolBarIcons = ImageList() ``` 創建圖像列表。 ```py save = ToolBarButton() exit = ToolBarButton() ``` 這是兩個工具欄按鈕。 ```py save.ImageIndex = 0 ``` 我們確定圖像列表中的哪個圖標將用于保存工具欄按鈕。 ```py toolBar.Buttons.AddRange((save, exit)) ``` `ToolBarButton`控件已添加到工具欄。 ```py toolBarIcons.Images.Add(Icon("new.ico")) toolBarIcons.Images.Add(Icon("exit.ico")) ``` 圖標將添加到圖像列表。 ```py if event.Button.Tag == "Exit": self.Close() ``` 如果按鈕的標簽等于`"Exit"`,我們將關閉該應用。 ![ToolBar](https://img.kancloud.cn/8d/ee/8dee1838eece95ec8f2b0cc5d3d9e0fa_250x201.jpg) 圖:工具欄 IronPython 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>

                              哎呀哎呀视频在线观看