อยากดูดวงฟรีๆ มาที่นี่ มหาหมอดูดอทคอม ดูดวงฟรี 24 ชั่วโมง



การจัดการกับเมนูด้วยโค้ดคำสั่ง
กลับเมนูหลัก
 

       การเพิ่มเมนูเข้าไปในฟอร์ม
       ในตอนรันโปรแกรม เราสามารถเพิ่มเมนูเข้าไปได้โดยการเพิ่ม 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

 

กลับเมนูหลัก