Berbagi Cerita, Catatan, Pengalaman ngoding dan Secangkir Teh Hangat.

Friday, January 6, 2017

Membuat Sendiri Custom Messagebox sederhana di VB.Net

Membuat Sendiri Custom Messagebox sederhana

Setelah posting sebelumnya membahas bagaimana "Membuat Sendiri Custom Inputbox Sederhana" post kali ini akan membahas bagaimana kita membuat Custom Messagebox.

Kenapa kita membuat Custom Messagebox ?.

Sebagai programmer kita ingin menyampaikan atau menampilkan sebagus mungkin dan seinteraktif mungkin, yang terkadang tidak disupport oleh default control atau default function yang disediakan, contohnya adalah Messagebox hilang otomatis, 
Terkadang kita ingin Messagebox yang ditampilkan hilang dengan sendirinya tanpa harus klik tombol yes atau no.

bukan sulap bukan sihir, mari dibuat.

Custom Messagebox

Material.

1 Buah Toolstrip
3 Buah Toolstripbutton : btn_ya, btn_tidak, btn_batal
1 Buah Picturebox : pikon
1 Buah Textbox : tpesan
1 Buat Labelbox : twaktu
1 Buah Imagelist : imagelist1
1 Buah Timer : timer1








sebagai contoh saya akan memasukan beberapa ikon kedalam imagelist.
















Propertis untuk control timer. interval 1000 = tick 1 detik
















Bahasa yang digunakan adalah VB.Net, .Net Framework yang saya gunakan adalah .Net 3.5 

Racikan Script didalam Form Custom Messagebox.


Public Sub New()
        InitializeComponent()
End Sub



 
Public Sub New(ByVal judul As String, ByVal pesan As String, Optional ByVal ikon As pilihan_ikon = pilihan_ikon.tanya_jawab, Optional ByVal tombol As pilihan_tombol = pilihan_tombol.yesno, Optional ByVal otomatis_tutup As Boolean = 0)
        InitializeComponent()
        Me.Text = judul
        Me.tpesan.Text = pesan
        Select Case tombol
            Case pilihan_tombol.yes
                btn_ya.Visible = True
                btn_tidak.Visible = False
                btn_batal.Visible = False
            Case pilihan_tombol.yesno
                btn_ya.Visible = True
                btn_tidak.Visible = True
                btn_batal.Visible = False
            Case pilihan_tombol.yesnocancel
                btn_ya.Visible = True
                btn_tidak.Visible = True
                btn_batal.Visible = True
        End Select
        Select Case ikon
            Case pilihan_ikon.ceklis
                pikon.Image = ImageList1.Images(1)
            Case pilihan_ikon.keluar
                pikon.Image = ImageList1.Images(3)
            Case pilihan_ikon.pencarian
                pikon.Image = ImageList1.Images(4)
            Case pilihan_ikon.tanya_jawab
                pikon.Image = ImageList1.Images(0)
            Case pilihan_ikon.tentang
                pikon.Image = ImageList1.Images(2)
        End Select
        Timer1.Enabled = otomatis_tutup
 End Sub

enum itu semacem pilihan ganda, tinggal panggil nama enumnya nanti pilihannya keluar sendiri.














Public Enum pilihan_tombol As Integer
        yes = 1
        yesno = 2
        yesnocancel = 3
End Enum













Public Enum pilihan_ikon
        tanya_jawab
        ceklis
        tentang
        keluar
        pencarian
 End Enum

 
Private Sub btn_ya_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_ya.Click
        DialogResult = DialogResult.Yes
End Sub


 Private Sub btn_tidak_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_tidak.Click
        DialogResult = DialogResult.No
 End Sub


 Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
        DialogResult = DialogResult.Cancel
 End Sub


dalam sample ini ketika parameter otomatis_tutup bernilai 1 setelah 30 detik form akan otomatis menjawab YES.

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        twaktu.Text = twaktu.Text + 1
        If twaktu.Text = 30 Then 'kalo nyampe 30 detik hilaaaaang
            twaktu.Enabled = False
            DialogResult = DialogResult.Yes
        End If
End Sub




untuk memanggil custom messagebox dari form lain racikannya seperti ini.


seperti yang dilihat karena menggunakan enum kita bisa langsung pilih, cukup membantu kan.
kenapa itu kruel-kruel karena kita belum milih ikonnya.

ini sample racikannya.


  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim pesan As New message_box_custom("Msgbox Custom", "Ini adalah Custom Message Box", message_box_custom.pilihan_ikon.pencarian, message_box_custom.pilihan_tombol.yes, 1)
        pesan.ShowDialog()
        If pesan.DialogResult = vbYes Then
            MsgBox("Tombol Yes Dipilih")
        Else
            MsgBox("Tombol No Dipilih")
        End If
End Sub



ketika dipanggil ini hasilnya.













kalo sampe batas waktu yang ditentukan tidak ada respon dari user, saat ini secara otomatis dianggap memilih YES.










karna ini cuma sample jadi desain formnya sederhana.

Selamat Mencoba.

Bahasa : VB.Net
IDE : Visual Studio 2010
Framework : .Net 3.5

sekian dulu berbaginya, jangan lupa like, komen, share.
jangan lupa sertakan link blog ini sebagai sumber kalo kalian mau paste tutorial ini di blog kalian.
Share:

0 comments:

Post a Comment

Powered by Blogger.

Ads 468x60px

Freelancer

Jaka Pradesa

Data Entry and Softwares

E: j.r.pradesa@gmail.com

Hire me on Freelancer.com

Social Icons