Sabtu, 07 Maret 2015

Tutorial Penggunaan DialogResult

Contoh Penggunaan DialogResult pada Object, MessageBox dan Form VBNET



Apakah anda sudah tahu apa itu DialogResult? Sederhanya adalah jika anda memunculkan/membuat messagebox, maka akan ada pilihan apakah hasilnya akan Yes, No, Cancel dan lain lain. Di VB.Net ada 8 DialogResult (dengan index dari 0) sebagai berikut :

0 = Windows.Forms.DialogResult.None
1 = Windows.Forms.DialogResult.OK
2 = Windows.Forms.DialogResult.Cancel
3 = Windows.Forms.DialogResult.Abort
4 = Windows.Forms.DialogResult.Retry
5 = Windows.Forms.DialogResult.Ignore
6 = Windows.Forms.DialogResult.Yes
7 = Windows.Forms.DialogResult.No

Jika anda ingin membuat pesan "Yes, No, Cancel" dan masing masing pilihan mempunyai kondisi yang berbeda, maka anda dapat menulis kodingnya seperti ini :

Dim hasil As DialogResult
hasil = MessageBox.Show("Yes or No or Cancel ?", "Tanya", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)
Select Case hasil
      Case Windows.Forms.DialogResult.Yes
                'jika yes maka ...
      Case Windows.Forms.DialogResult.No
                'jika no maka ...
      Case Windows.Forms.DialogResult.Cancel
                'jika cancel maka ...
End Select

DialogResult jika dapat anda aplikasikan untuk validasi pada object :OpenFileDialog, SaveFileDialog, ColorDialog dan lain lain. Sehingga dapat diketahui apakah user itu meng-click open atau cancel misalnya:

Dim buka As New OpenFileDialog
With buka
    .Filter = "Music File|*.mp3"
    If .ShowDialog = Windows.Forms.DialogResult.Cancel Then
                'jika batal maka no action
    Else
                'jika klik open
      TextBox1.Text = .FileName
    End If
End With

Selain itu jika ada pernah memanggil form lain (form2) dari tombol di form1, anda juga dapat menggunakan DialogResult supaya lebih praktis. Misalnya saya sudah membuat form seperti ini :


Kemudian saya panggil dari form1 (saat tekan button1) dan sekaligus membuat kondisi selanjutnya.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles Button1.Click
   Dim new_form As New Form2
   If new_form.ShowDialog = Windows.Forms.DialogResult.OK Then
            'jika Setuju ...
   Else
            'jika tidak setuju ...
   End If
End Sub

Pertanyaanya, bagaimana kita bisa tahu SETUJU = OK dan TIDAK SETUJU = Cancel ? jawabannya adalah dengan setting dialoag result pada masing masing button di event form2_load()
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
   Button_setuju.DialogResult = Windows.Forms.DialogResult.OK
   Button_tidak.DialogResult = Windows.Forms.DialogResult.Cancel
End Sub

Sekian postingan tentang penggunaan DialogResult pada VB.Net.

Semoga Bermanfaat

Tidak ada komentar:

Posting Komentar