
Menülerin Özellikleri
Default Item: Bu özellik de True ve False olmak üzere iki farklı değer alabilir. True olarak ayarlandığında, ilgili menü elemanını içeren menünün çift tıklanması durumunda, o menü elemanının Click olayı tetiklenmiş olur.
Enabled: Bazı menüler programın çalışması esnasında tıklanamaz şekilde pasif olabilirler. Word programındaki Yapıştır menüsü buna örnek olarak verilebilir. Eğer herhangi bir şey kopyalanmamışsa bu menü pasif hale gelir. Enabled özelliği bir menünün aktif veya pasif olma durumunu ayarlar.
Visible: Menünün görünmez olup olmayacağını ayarlayan özelliktir.
Menülere kod yazma işlemi bir butona kod yazmadan farklı değildir. Her menü elemanının üzerine tıklandığında tetiklenen bir Click olayı vardır.
Private Sub YaziTipiKalın_Click(ByVal sender As System.Object, ByVal_ e As System.EventArgs) Handles YaziTipiKalın.Click
YaziTipiKalın.Checked = Not YaziTipiKalın.Checked
End Sub
Menülere Kolay Erişim:
Acces Key ve Shortcut Key
Menülere Çalışma Zamanında Erişim
MainMenu türünden bir değişken tanımlanır.
Add metodu ile menüler ilave edilir.
Eklenen menülere EventHandler tanımlanır.
Menüler için olay yordamları yazılır.
Dim MenüAdı As New MainMenu
MainMenu.MenuItems.Add(“Menü Adı”)
Dim EventHandlerAdı As New_ EventHandler(AddressOf SubAdı)
…
Sub SubAdı(ByVal sender As Object, ByVal_ e As System.EventArgs)
…
End Sub
Çalışma Zamanında Menü Ekleme Örnek Kodları
Public Class Form1
Inherits System.Windows.Forms.Form
Windows Form Designer generated code
Dim yEventHandler As New EventHandler(AddressOf MenuTiklandi)
Dim yMenu As New MainMenu
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As_ System.EventArgs) Handles MyBase.Load
yMenu.MenuItems.Add("Yazı Tipi")
yMenu.MenuItems(0).MenuItems.Add("Kalın", yEventHandler)
yMenu.MenuItems(0).MenuItems.Add("Eğik", yEventHandler)
Me.Menu = yMenu
End Sub
Sub MenuTiklandi(ByVal sender As Object, ByVal e As System.EventArgs)
Dim TiklananMenu As New MenuItem
TiklananMenu = CType(sender, MenuItem)
TiklananMenu.Checked = Not TiklananMenu.Checked
End Sub
End Class
Hiç yorum yok: