การเพิ่มเมนูเข้าไปในฟอร์ม
ในตอนรันโปรแกรม
เราสามารถเพิ่มเมนูเข้าไปได้โดยการเพิ่ม
MenuItem เข้าไปในคอลเลคชั่น
MenuItems ของออบเจ็กต์ MainMenu
ด้วยโค้ดคำสั่งต่อไปนี้
Dim mnufilemenu As New
MainMenu()
Me.Menu = mnuFileMenu
Dim myMenuItemFile As New
MenuItem("&File")
Dim myMenuItemNew As New
MenuItem("&New")
mnuFileMenu.MenuItems.Add(myMenuItemFile)
myMenuItemFile.MenuItems.Add(myMenuItemNew)
mnuFileMenu.MenuItems.Add("&Edit") |
การก็อปปี้ไอเทมในเมนู
เราสามารถใช้คำสั่ง
CloneMenu ในการก็อปปี้เมนู
ดังโค้ดตัวอย่าง
จากตัวอย่างจะเป็นการก็อปปี้เพื่อสร้างเมนูป็อปอัพให้กับฟอร์ม
Private mmMainMenu As
MainMenu
Private miEditMenu As
MenuItem
Private cmEdit As
ContextMenu
Private Sub Form1_Load(ByVal
sender As Object, ByVal e As
System.EventArgs) Handles
MyBase.Load
mmMainMenu = New
MainMenu()
miEditMenu = New
MenuItem("&Edit")
miEditMenu.MenuItems.Add("&Cut")
miEditMenu.MenuItems.Add("&Copy")
miEditMenu.MenuItems.Add("&Paste")
mmMainMenu.MenuItems.Add(miEditMenu)
Me.Menu = mmMainMenu
cmEdit = New
ContextMenu()
cmEdit.MenuItems.Add(miEditMenu.CloneMenu())
Me.ContextMenu = cmEdit
End Sub |
เมื่อ
Click mouse ปุ่มขวา จะปรากฎ
ContextMenu ขึ้นมา
การลบเมนูออกจากฟอร์ม
Public mnuTextSize As
MainMenu
Public mnuitemText As
MenuItem
Public mnuitemLarge As
MenuItem
Public mnuitemMedium As
MenuItem
Public mnuitemSmall As
MenuItem
Private Sub Form1_Load(ByVal
sender As Object, ByVal e As
System.EventArgs) Handles
MyBase.Load
mnuTextSize = New
MainMenu()
mnuitemText = New
MenuItem("&Text")
mnuitemLarge = New
MenuItem("&Large")
mnuitemMedium = New
MenuItem("&Medium")
mnuitemSmall = New
MenuItem("&Small")
mnuTextSize.MenuItems.Add(mnuitemText)
mnuitemText.MenuItems.Add(mnuitemLarge)
mnuitemText.MenuItems.Add(mnuitemMedium)
mnuitemText.MenuItems.Add(mnuitemSmall)
Me.Menu = mnuTextSize
End Sub
Private Sub
Button1_Click(ByVal sender
As System.Object, ByVal e As
System.EventArgs) Handles
Button1.Click
mnuitemText.MenuItems.Remove(mnuitemLarge)
End Sub |
เมื่อเรา
Click mouse ปุ่ม Remove Menu เมนู
Large จะหายไป
การ Disable เมนู
การ Enable และ
Disable เมนู
เป็นวิธีที่ช่วยให้เราลดหรือเพิ่มคำสั่งที่จะให้ผู้ใช้ใช้ได้
การ Disable เมนูใน Menu
Designer ให้กำหนดคุณสมบัติ Enabled
ให้เท่ากับ False สำหรับการ Disable
ในโค้ดคำสั่งให้ใช้โค้ดคำสั่งดังต่อไปนี้
MenuItem1.Enabled = False |
การซ่อนเมนู
การซ่อนเมนู
เป็นวิธีในการควบคุมผู้ใช้
และจำกัดคำสั่งที่จะให้ผู้ใช้ใช้ได้บ่อยๆ
การซ่อนเมนูในตอนออกแบบ
ให้เลือกเมนูที่ต้องการซ่อนและกำหนดค่าคุณสมบัติ
Visible ให้เท่ากับ False
สำหรับการซ่อนเมนูด้วยโค้ดคำสั่ง
ให้ใช้คำสั่งต่อไปนี้
MenuItem3.Visible = False |
การย้ายเมนู
การย้ายเมนูตอนออกแบบ
ให้ Click mouse ที่เมนูที่ต้องการ
และลากไปยังที่ใหม่
สำหรับการย้ายเมนูโดยการใช้โค้ดคำสั่งให้เปลี่ยนคุณสมบัติ
Index ของเมนูด้วยคำสั่งต่อไปนี้
Me.Menu.MenuItems(0).MenuItems(0).Index
+= 1 |
การรวมเมนูเข้าด้วยกัน
เมื่อต้องการรวมเมนูเข้าด้วยกันด้วยโค้ดคำสั่ง
ให้ใช้คำสั่งต่อไปนี้
Public mnuTextSize As
MainMenu
Public mnuitemText As
MenuItem
Public mnuitemText2 As
MenuItem
Public mnuitemLarge As
MenuItem
Public mnuitemMedium As
MenuItem
Public mnuitemSmall As
MenuItem
Public mnuitemLargest As
MenuItem
Private Sub Form1_Load(ByVal
sender As Object, ByVal e As
System.EventArgs) Handles
MyBase.Load
mnuTextSize = New
MainMenu()
mnuitemText = New
MenuItem("&Text")
mnuitemLarge = New
MenuItem("&Large")
mnuitemMedium = New
MenuItem("&Medium")
mnuitemSmall = New
MenuItem("&Small")
mnuTextSize.MenuItems.Add(mnuitemText)
mnuitemText.MenuItems.Add(mnuitemLarge)
mnuitemText.MenuItems.Add(mnuitemMedium)
mnuitemText.MenuItems.Add(mnuitemSmall)
mnuitemText2 = New
MenuItem("&Text2")
mnuitemLargest = New
MenuItem("&Largest")
mnuTextSize.MenuItems.Add(mnuitemText2)
mnuitemText2.MenuItems.Add(mnuitemLargest)
Me.Menu = mnuTextSize
End Sub
Private Sub
Button1_Click(ByVal sender
As System.Object, ByVal e As
System.EventArgs) Handles
Button1.Click
mnuitemText.MergeMenu(mnuitemText2)
End Sub |
เมนู
Text จะมีเมนู Large, Medium, Small
เมนู
Text2 จะมีเมนู Largest
เมื่อ
Click mouse ปุ่ม Merge Menu เมนู
Largest จาก Text2
จะย้ายมารวมอยู่กับเมนู Text
|