19 July 2014

VB6: Form dan Menu


Menu adalah salah satu fitur yang penting dalam sebuah produk software. Setiap software standard memiliki menu. Secara umum kita biasa melihat menu di bagian atas tampilan software. Menu merupakan control tapi terpisah dari control di toolbox dan tidak bekerja seperti control biasa. Kita menambahkan menu ke form dengan menggunakan window Menu Editor. Pada form aktif tekan tombol Ctrl+E untuk menampilkan menu editor, atau klik pada toolbar, atau klik kanan -> Menu Editor.

1. Membuat Menu
Kita dapat membuat menu dengan cara yang sangat mudah, cukup isi caption dan nama pada window Menu Editor kemudian klik OK.

Cukup tekan panah kanan pada keyboard untuk membuat sub menu item. Klik tombol Next untuk membuat menu berikutnya. Lalu klik OK setelah selesai.

2. Menu pada Form
Kita akan coba membuat menu dengan UI design sebagai berikut:

Ctrl+R,  Ctrl+B, Ctrl+W, dan Ctrl+G merupakan shortcut yang diatur pada bagian Shortcut di Menu Editor.

Code:
Option Explicit

Private Sub mnuBlue_Click()
 Form1.BackColor = vbBlue
End Sub

Private Sub mnuGreen_Click()
    Form1.BackColor = vbGreen
End Sub

Private Sub mnuRed_Click()
    Form1.BackColor = vbRed
End Sub

Private Sub mnuWhite_Click()
    Form1.BackColor = vbWhite
End Sub


3. Menu pada MDI Form
Melanjutkan contoh diatas tambahkan sebuah form (Form2) dan sebuah MDIForm.
Beri label pada Form2 yang bertuliskan “FORM2” untuk membedakan antara Form1 dan Form2.


Kemudian pada MDI Form atur menu sebagai berikut:

Set Startup Object dengan cara klik menu Project -> Project1 Properties…

Tab General -> Startup Object…

Berikut ini tampilan MDI Form

Set property MDIChild = True untuk Form1 dan Form2.
Code:
Option Explicit

Private Sub mnuForm1_Click()
Form1.Show
End Sub

Private Sub mnuForm2_Click()
Form2.Show
End Sub


Saat tidak ada form child aktif atau ada form cild aktif tetapi form tersebut tidak memiliki menu tersendiri maka menu yang akan ditampilkan adalah menu MDI Form.

Sementara  jika form aktif memiliki menu maka MDI form akan menampilkan menu dari form aktif tersebut.

Menu juga memiliki property Checked yang dapat digunakan untuk membuat pilihan aktif/non aktif.

Notes: untuk membuat garis pembatas di sub menu ketikan minus (-) pada property caption

Tambahkan code:
Private Sub mnuShowHelp_Click()
If mnuShowHelp.Checked = True Then
   mnuHelp.Visible = False
   mnuShowHelp.Checked = False
Else
   mnuHelp.Visible = True
   mnuShowHelp.Checked = True
End If
End Sub



4. Pop Up Menu
Kita dapat mengubah menu menjadi popup menu dengan menggunakan method PopupMenu
Sintaks:
PopupMenu Menu, [Flags], [X], [Y], [DefaultMenu]

Note: parameter dengan tanda kurung merupakan optional

Melanjutkan contoh diatas, tuliskan code berikut pada Form1.
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = vbRightButton Then
        PopupMenu mnuView   'PopupMenu is a method
    End If
End Sub



Click here if you like this article.


2 comments:

hijram mahjura said...

hai mbak rani, misalkan saya mau menampilkan form2 hanya menekan tombol ctrl+R, startup objectnya adalah form1, tanpa menu utama, tanpa menu editor coding pemanggilan form2 melalui form1 gmn ya mbk ?

rani irsan said...

Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 18 Then
Form2.Show
End If
End Sub