Multiple
Form, Module, dan Menu
Kasus 106: Menamai-Ulang Form
Anda bisa mengklik-kanan nama form
pada Solution Explorer, seperti
ditunjukkan pada gambar berikut ini.
Nama form diberi nama FormUtama seperti ditampilkan pada
gambar berikut.
Kasus 107: Menambah Form Pada Projek
Anda bisa mengklik menu PROJECT
pada batang menu Visual Studio, kemudian memilih Add Windows Form. 
Jendela Add New Item akan ditampilkan seperti ditunjukkan pada gambar
berikut.
Solution Explorer tampak menjadi seperti gambar berikut.
Kasus 108: Mengatur Startup Form
Form pertama yang Anda ciptakan,
secara default, merupakan startup form, yang secara otomatis ditampilkan ketika
aplikasi dijalankan. Untuk menetapkan startup form, Anda bisa mengklik-kanan
nama projek, seperti ditampilkan pada gambar berikut.
Kemudian, Anda bisa mengklik Properties, seperti ditampilkan pada
gambar berikut.
Kasus 109: Aplikasi dengan Dua Form
| 
Public Class
  FormUtama 
    Private Sub
  tombolTampil_Click(sender As Object, e As EventArgs)  
    Handles tombolTampil.Click 
        ' Menciptakan sebuah instans dari
  FormPesan 
        Dim formPesan As New
  FormPesan 
        ' Menampilkan FormPesan 
        formPesan.ShowDialog() 
    End Sub 
    Private Sub
  tombolKeluar_Click(sender As Object, e As EventArgs)  
    Handles tombolKeluar.Click 
        Me.Close() 
    End Sub 
End Class | 
Kasus 110: Menambah Sebuah Module
Anda bisa mengklik menu PROJECT
pada batang menu Visual Studio, kemudian memilih Add Windows Form. Dialog Add New Item akan ditampilkan dan Anda bisa memberi-nama pada
module tersebut, seperti ditampilkan pada gambar berikut.
Kasus 111: Aplikasi Dengan Sebuah
Module dan Tiga Form
| 
Module
  ModuleMatematika 
    ' Konstanta-konstanta untuk faktor
  konversi meter ke unit-unit Inggris 
    Public Const
  dblMETER_KE_INCI As Double = 39.37 
    Public Const
  dblMETER_KE_KAKI As Double = 3.28 
    Public Const
  dblMETER_KE_YARD As Double = 1.09 
    ' Konstanta-konstanta untuk faktor
  konversi inci ke unit-unit metrik 
    Public Const dblINCI_KE_MM As
  Double = 25.4 
    Public Const dblINCI_KE_CM As
  Double = 2.54 
    Public Const
  dblINCI_KE_METER As Double = 0.0254 
    ' Fungsi MeterKeInci menerima meter
  sebagai argumen 
    ' dan menghasilkan inci ekivalen 
    Public Function
  MeterKeInci(ByVal dblMeter As Double) As Double 
        Return dblMeter *
  dblMETER_KE_INCI 
    End Function 
    ' Fungsi MeterKeKaki menerima meter
  sebagai argumen 
    ' dan menghasilkan kaki ekivalen 
    Public Function
  MeterKeKaki(ByVal dblMeter As Double) As Double 
        Return dblMeter *
  dblMETER_KE_KAKI 
    End Function 
    ' Fungsi MeterKeYard menerima meter
  sebagai argumen 
    ' dan menghasilkan yard ekivalen 
    Public Function
  MeterKeYard(ByVal dblMeter As Double) As Double 
        Return dblMeter *
  dblMETER_KE_YARD 
    End Function 
    ' Fungsi InciKeMM menerima inci sebagai
  argumen 
    ' dan menghasilkan milimeter ekivalen 
    Public Function InciKeMM(ByVal
  dblInci As Double) As Double 
        Return dblInci * dblINCI_KE_MM 
    End Function 
    ' Fungsi InchesToCM menerima inci sebagai
  argumen 
    ' dan menghasilkan sentimeter ekivalen 
    Public Function InciToCM(ByVal
  dblInci As Double) As Double 
        Return dblInci * dblINCI_KE_CM 
    End Function 
    ' Fungsi InciKeMeter menerima inci
  sebagai argumen 
    ' dan menghasilkan meter ekivalen 
    Public Function
  InciKeMeter(ByVal dblInci As Double) As Double 
        Return dblInci *
  dblINCI_KE_METER 
    End Function 
End Module | 
| 
Public Class
  FormUtama 
    Private Sub
  tombolKonversiMeter_Click(sender As Object, e As EventArgs)  
    Handles tombolKonversiMeter.Click 
        ' Menciptakan sebuah instans dari
  FormMeter_Ke_Inggris 
        Dim formMeter_Ke_Inggris As
  New FormMeter_Ke_Inggris 
        ' Menampilkan FormPesan 
        formMeter_Ke_Inggris.ShowDialog() 
    End Sub 
    Private Sub
  tombolKonversiInci_Click(sender As Object, e As EventArgs)  
    Handles tombolKonversiInci.Click 
        ' Menciptakan sebuah instans dari
  FormInci_Ke_Metrik 
        Dim formInci_Ke_Metrik As
  New FormInci_Ke_Metrik 
        ' Menampilkan FormPesan 
        formInci_Ke_Metrik.ShowDialog() 
    End Sub 
    Private Sub
  tombolKeluar_Click(sender As Object, e As EventArgs)  
    Handles tombolKeluar.Click 
        Me.Close() 
    End Sub 
End Class | 
| 
Public Class
  FormMeter_Ke_Inggris 
    Private Sub
  tombolMeterKeInci_Click(sender As Object, e As EventArgs)  
    Handles tombolMeterKeInci.Click 
        Dim dblMeter As Double  ' memuat meter 
        Dim dblInci As Double  ' memuat inci 
        Try 
            'Membaca meter 
            dblMeter = CDbl(teksJumMeter.Text) 
            'Mengkonversi meter menjadi inci 
            dblInci = MeterKeInci(dblMeter) 
            'Menampilkan hasil 
           
  MessageBox.Show(dblMeter.ToString() & " sama dengan
  " & 
                dblInci.ToString() &
  " inci") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
    Private Sub
  tombolMeterKeKaki_Click(sender As Object, e As EventArgs)  
    Handles tombolMeterKeKaki.Click 
        Dim dblMeter As Double  ' memuat meter 
        Dim dblKaki As Double  ' memuat kaki 
        Try 
            'Membaca meter 
            dblMeter =
  CDbl(teksJumMeter.Text) 
            'Mengkonversi meter menjadi kaki 
            dblKaki = MeterKeKaki(dblMeter) 
            'Menampilkan hasil 
           
  MessageBox.Show(dblMeter.ToString() & " sama dengan
  " & 
                dblKaki.ToString() &
  " kaki") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
    Private Sub
  tombolMeterKeYard_Click(sender As Object, e As EventArgs)  
    Handles tombolMeterKeYard.Click 
        Dim dblMeter As Double  ' memuat meter 
        Dim dblYard As Double  ' memuat yard 
        Try 
            'Membaca meter 
            dblMeter =
  CDbl(teksJumMeter.Text) 
            'Mengkonversi meter menjadi yard 
            dblYard = MeterKeYard(dblMeter) 
            'Menampilkan hasil 
           
  MessageBox.Show(dblMeter.ToString() & " sama dengan
  " & 
                dblYard.ToString() &
  " yard") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
End Class | 
| 
Public Class
  FormInci_Ke_Metrik 
    Private Sub
  tombolInciKeMM_Click(sender As Object, e As EventArgs)  
    Handles tombolInciKeMM.Click 
        Dim dblInci As Double  ' memuat inci 
        Dim dblMM As Double  ' memuat milimeter 
        Try 
            'Membaca inci 
            dblInci = CDbl(teksJumInci.Text) 
            'Mengkonversi inci menjadi
  milimeter 
            dblMM = InciKeMM(dblInci) 
            'Menampilkan hasil 
            MessageBox.Show(dblInci.ToString()
  & " sama dengan " &  
                dblMM.ToString() & "
  milimeter") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
    Private Sub
  tombolInciKeCM_Click(sender As Object, e As EventArgs)  
    Handles tombolInciKeCM.Click 
        Dim dblInci As Double  ' memuat inci 
        Dim dblCM As Double  ' memuat sentimeter 
        Try 
            'Membaca inci 
            dblInci = CDbl(teksJumInci.Text) 
            'Mengkonversi meter menjadi
  sentimeter 
            dblCM = InciKeMM(dblInci) 
            'Menampilkan hasil 
           
  MessageBox.Show(dblInci.ToString() & " sama dengan
  " &  
            dblCM.ToString() & " sentimeter") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
    Private Sub
  tombolInciKeMeter_Click(sender As Object, e As EventArgs)  
    Handles tombolInciKeMeter.Click 
        Dim dblInci As Double  ' memuat inci 
        Dim dblMeter As Double  ' memuat meter 
        Try 
            'Membaca inci 
            dblInci = CDbl(teksJumInci.Text) 
            'Mengkonversi meter menjadi meter 
            dblMeter = InciKeMM(dblInci) 
            'Menampilkan hasil 
           
  MessageBox.Show(dblInci.ToString() & " sama dengan
  " & 
                dblMeter.ToString() &
  " meter") 
        Catch ex As Exception 
            'Menampilkan pesan error 
            MessageBox.Show("Error:
  Masukkan nilai numerik") 
        End Try 
    End Sub 
End Class | 
Kasus 112: Aplikasi Biro Diving dengan Module,
Menu, dan Multiple Form
| 
Module
  ModuleHitungHarga 
    'Konstanta-konstanta global 
    Public Const
  g_intMINIMUM_UNTUK_DISKON As Integer = 5 
    Public Const
  g_decPERSEN_DISKON As Decimal = 0.1D 
    ' Fungsi HitungDiskon menerima sebuah
  total paket sebagai argumen 
    ' dan menghasilkan jumlah diskon untuk
  total tersebut. 
    Public Function
  HitungDiskon(decTotal As Decimal) As Decimal 
        Dim decDiskon As Decimal
  ' Memuat diskon 
        ' Menghitung diskon 
        decDiskon = decTotal *
  g_decPERSEN_DISKON 
        ' Menghasilkan diskon 
        Return decDiskon 
    End Function 
End Module | 
| 
Public Class
  FormPaketScubaDiving 
    Private Sub
  tombolHitung_Click(sender As Object, e As EventArgs)  
    Handles tombolHitung.Click 
        ' Konstanta untuk harga per orang
  untuk paket ini 
        Const decSCUBA_HARGA_PER_ORANG
  As Decimal = 3000000D 
        ' Variabel-variabel lokal 
        Dim intJumlahOrang As Integer
  ' Jumlah orang 
        Dim decDiskon As Decimal
  ' Jumlah diskon 
        Dim decTotal As Decimal
  ' Biaya total 
        Try 
            ' Membaca jumlah orang 
            intJumlahOrang =
  CInt(teksJumlahOrang.Text) 
            ' Menghitung total sebelum diskon
  diterapkan 
            decTotal = intJumlahOrang *
  decSCUBA_HARGA_PER_ORANG 
            ' Menentukan apakah diskon dapat
  diberikan 
            If intJumlahOrang >=
  g_intMINIMUM_UNTUK_DISKON Then 
                ' Menghitung jumlah diskon 
                decDiskon = HitungDiskon(decTotal) 
                ' Mengurangkan diskon dari
  total 
                decTotal = decTotal -
  decDiskon 
            Else 
                ' Diskon Rp.0 
                decDiskon = 0D 
            End If 
            ' Menampilkan hasil 
            teksDiskon.Text = "Rp. "
  & decDiskon.ToString("N1") 
            teksTotal.Text = "Rp. "
  & decTotal.ToString("N1") 
        Catch ex As Exception 
            ' Pesan error untuk masukan
  tak-valid 
            MessageBox.Show("Masukkan
  integer valid untuk jumlah orang.") 
        End Try 
    End Sub 
    Private Sub
  tombolReset_Click(sender As Object, e As EventArgs)  
    Handles tombolReset.Click 
        ' Membersihkan kotak teks  
        teksJumlahOrang.Clear() 
        teksDiskon.Text = String.Empty 
        teksTotal.Text = String.Empty 
        ' Mereset fokus 
        teksJumlahOrang.Focus() 
    End Sub 
    Private Sub
  tombolTutup_Click(sender As Object, e As EventArgs)  
    Handles tombolTutup.Click 
        Me.Close() 
    End Sub 
End Class | 
| 
Public Class
  FormPaketSkyDiving 
    Private Sub
  tombolHitung_Click(sender As Object, e As EventArgs)  
    Handles tombolHitung.Click 
        ' Konstanta untuk harga per orang
  untuk paket ini 
        Const decSKY_HARGA_PER_ORANG As
  Decimal = 2500000D 
        ' Variabel-variabel lokal 
        Dim intJumlahOrang As Integer
  ' Jumlah orang 
        Dim decDiskon As Decimal
  ' Jumlah diskon 
        Dim decTotal As Decimal
  ' Biaya total 
        Try 
            ' Membaca jumlah orang 
            intJumlahOrang =
  CInt(teksJumlahOrang.Text) 
            ' Menghitung total sebelum diskon
  diterapkan 
            decTotal = intJumlahOrang * decSKY_HARGA_PER_ORANG 
            ' Menentukan apakah diskon dapat
  diberikan 
            If intJumlahOrang >=
  g_intMINIMUM_UNTUK_DISKON Then 
                ' Menghitung jumlah diskon 
                decDiskon =
  HitungDiskon(decTotal) 
                ' Mengurangkan diskon dari
  total 
                decTotal = decTotal -
  decDiskon 
            Else 
                ' Diskon Rp.0 
                decDiskon = 0D 
            End If 
            ' Menampilkan hasil 
            teksDiskon.Text = "Rp.
  " & decDiskon.ToString("N1") 
            teksTotal.Text = "Rp. "
  & decTotal.ToString("N1") 
        Catch ex As Exception 
            ' Pesan error untuk masukan
  tak-valid 
            MessageBox.Show("Masukkan
  integer valid untuk jumlah orang.") 
        End Try 
    End Sub 
    Private Sub
  tombolReset_Click(sender As Object, e As EventArgs)  
    Handles tombolReset.Click 
        ' Membersihkan kotak teks  
        teksJumlahOrang.Clear() 
        teksDiskon.Text = String.Empty 
        teksTotal.Text = String.Empty 
        ' Mereset fokus 
        teksJumlahOrang.Focus() 
    End Sub 
    Private Sub
  tombolTutup_Click(sender As Object, e As EventArgs)  
    Handles tombolTutup.Click 
        Me.Close() 
    End Sub 
End Class | 
| 
Public Class
  FormUtama 
    Private Sub
  KeluarToolStripMenuItem_Click(sender As Object, e As EventArgs)
   
    Handles
  KeluarToolStripMenuItem.Click 
        'Menutup form 
        Me.Close() 
    End Sub 
    Private Sub
  ScubaDivingToolStripMenuItem_Click(sender As Object, e As  
    EventArgs) Handles
  ScubaDivingToolStripMenuItem.Click 
        ' Menciptakan sebuah instans dari
  FormPaketScubaDiving 
        Dim formPaketScubaDiving As
  New FormPaketScubaDiving 
        ' Menampilkan FormPaketScubaDiving 
        formPaketScubaDiving.ShowDialog() 
    End Sub 
    Private Sub
  SkyDivingToolStripMenuItem_Click(sender As Object, e As
  EventArgs)  
    Handles
  SkyDivingToolStripMenuItem.Click 
        ' Menciptakan sebuah instans dari
  FormPaketSkyDiving 
        Dim formPaketSkyDiving As
  New FormPaketSkyDiving 
        ' Menampilkan FormPaketSkyDiving  
        formPaketSkyDiving.ShowDialog() 
    End Sub 
    Private Sub
  TentangToolStripMenuItem_Click(sender As Object, e As
  EventArgs)  
    Handles
  TentangToolStripMenuItem.Click 
        ' Menampilkan kotak pesan sederhana 
        MessageBox.Show("Aplikasi
  Biro Diving Versi 1.0") 
    End Sub 
End Class | 
Kasus 113: Demonstrasi Penggunaan
Kontrol ErrorProvider
Sekarang,
Anda akan menampilkan pesan error secara langsung pada form menggunakan kontrol
ErrorProvider, bukan melalui pesan
popup pada kotak pesan. Dengan menggunakan kontrol ErrorProvider, Anda dapat menempatkan indikasi error di samping
bidang yang mengalami error, sama seperti kontrol validator pada aplikasi Web.
Meskipun
Anda dapat menambahkan beberapa komponen ErrorProvider
pada sebuah form, umumnya Anda dapat menggunakan satu kontrol ErrorProvider untuk semua kontrol pada
suatu form. Begitu Anda menempatkan ErrorProvider
pada component tray, Anda dapat
memvalidasi suatu kontrol. Jika nilai data tak valid, maka komponen ErrorProvider akan menampilkan sebuah
ikon di samping bidang yang mengalami error dan menampilkan pesan popup sama
seperti ToolTip.
Logika
program tidak berubah dari solusi MessageBox.
Ketika Anda mengidentifikasi sebuah error, Anda dapat menggunakan metode ErrorProvider SetError, yang
memunculkan ikon.
Format umum dari metode SetError:
ObjekErrorProvider.SetError(NamaKontrol,
StringPesan)
Contoh:
ErrorProvider1.SetError
(kotakTeksKuantitas, "Kuantitas
harus numerik." )
ErrorProvider1.SetError (kotakTeksKartuKredit, "Bidang ini perlu diisi.")
| 
Public Class
  FormErrorProvider 
    Const DISKON_Decimal As Decimal
  = 0.15D 
    Private Sub
  tombolHitung_Click(sender As Object, e As EventArgs)  
    Handles tombolHitung.Click 
        ' Menghitung harga dan diskon 
        Dim kuantitasInteger As
  Integer 
        Dim hargaDecimal,
  hargaTotalDecimal, diskonDecimal, 
        hargaDiDiskonDecimal As Decimal 
        ' Membersihkan semua pesan 
        ErrorProvider1.Clear() 
        Try 
            ' Mengkonversi kuantitas menjadi
  variabel numerik 
            kuantitasInteger =
  Integer.Parse(teksKuantitas.Text) 
            Try 
                ' Mengkonversi harga jika
  kuantitas berhasil dibaca 
                hargaDecimal =
  Decimal.Parse(teksHarga.Text) 
                ' Menghitung nilai-nilai
  penjualan 
                hargaTotalDecimal =
  kuantitasInteger * hargaDecimal 
                diskonDecimal =
  hargaTotalDecimal * DISKON_Decimal 
                hargaDiDiskonDecimal =
  hargaTotalDecimal - diskonDecimal 
                ' Memformat dan menampilkan
  hasil 
                teksTotalHarga.Text =
  "Rp. " & hargaTotalDecimal.ToString("N1") 
                teksPersenDiskon.Text =
  "Rp. " & diskonDecimal.ToString("N1") 
                teksHargaDiDiskon.Text =
  "Rp. " &
  hargaDiDiskonDecimal.ToString("N1") 
            Catch ex As Exception 
                ' Menangani eksepsi harga 
               
  ErrorProvider1.SetError(teksHarga, "Harga harus numerik.") 
                With teksHarga 
                    .Focus() 
                    .SelectAll() 
                End With 
            End Try 
        Catch ex As Exception 
            ' Menangani eksepsi kuantitas 
           
  ErrorProvider1.SetError(teksKuantitas, "Kuantitas harus
  numerik.") 
            With teksKuantitas 
                .Focus() 
                .SelectAll() 
            End With 
        End Try 
    End Sub 
    Private Sub
  tombolHapus_Click(sender As Object, e As EventArgs)  
    Handles tombolHapus.Click 
        ' Menghapus kotak-kotak teks pada
  form 
        teksJudul.Clear() 
        teksHarga.Clear() 
        teksTotalHarga.Clear() 
        teksHargaDiDiskon.Clear() 
        teksPersenDiskon.Clear() 
        With teksKuantitas 
            .Clear() 
            .Focus() 
        End With 
    End Sub 
    Private Sub
  tombolKeluar_Click(sender As Object, e As EventArgs)  
    Handles tombolKeluar.Click 
        Me.Close() 
    End Sub 
End Class | 
Kasus 114: Properti MaxLength dan
CharacterCasing dari Kotak Teks
Anda
dapat memakai properti MaxLength dan
CharacterCasing dari kotak teks
untuk membantu pengguna dalam memasukkan data yang tepat. Jika Anda menetapkan
properti MaxLength, maka pengguna
tidak dapat memasukkan jumlah karakter yang melebih jumlah karakter maksimum.
Antarmuka pengguna akan mengeluarkan bunyi dan menahan titik penyisipan pada
tempatnya untuk mengindikasikan error kepada pengguna. Properti CharacterCasing memiliki nilai Normal, Upper, atau Lower,
dengan nilai default Normal. Jika
Anda menetapkan nilai Upper,
misalnya, maka tiap karakter yang diketikkan pengguna secara otomatis akan
dikonversi menjadi huruf besar.
Program
berikut memiliki sebuah komponen ErrorProvider,
dan semua kontrol pada form memiliki properti CausesValidation yang ditetapkan menjadi True. Kotak teks teksPropinsi
memiliki properti MaxLength yang
ditetapkan menjadi 5 dan properti CharacterCasing-nya
menjadi Upper. 
| 
Public Class
  FormMaxLength 
    Private Sub
  teksNamaDepan_Validating(sender As Object, e As 
    System.ComponentModel.CancelEventArgs)
  Handles teksNamaDepan.Validating 
        ' Memvalidasi entri yang diperlukan 
       
  ErrorProvider1.SetError(teksNamaDepan, "") 
        ' Memeriksa string kosong 
        If teksNamaDepan.Text =
  String.Empty Then 
            ' Membatalkan event 
            e.Cancel = True 
           
  ErrorProvider1.SetError(teksNamaDepan, "Bidang ini diperlukan.") 
        End If 
    End Sub 
    Private Sub
  teksNamaBelakang_Validating(sender As Object, e As 
    System.ComponentModel.CancelEventArgs)
  Handles teksNamaBelakang.Validating 
        ' Memvalidasi entri yang diperlukan 
       
  ErrorProvider1.SetError(teksNamaBelakang, "") 
        ' Memeriksa string kosong 
        If teksNamaBelakang.Text.Length
  = 0 Then 
            ' Membatalkan event 
            e.Cancel = True 
           
  ErrorProvider1.SetError(teksNamaBelakang, "Bidang ini
  diperlukan.") 
        End If 
    End Sub 
    Private Sub
  teksPropinsi_Validating(sender As Object, e As 
    System.ComponentModel.CancelEventArgs)
  Handles teksPropinsi.Validating 
        ' Memastikan bahwa propinsi adalah 5
  karakter 
        ' Properti CharacterCasing
  mengkonversi ke huruf besar 
        ' Karakter MaxLength membatasi
  masukan menjadi 5 karakter 
        ' Membatalkan sembarang error
  sebelumnya 
        ErrorProvider1.SetError(teksPropinsi,
  "") 
        If teksPropinsi.Text.Length
  <> 5 Then 
            ' Membatalkan event dan memilih
  teks 
            e.Cancel = True 
            teksPropinsi.SelectAll() 
           
  ErrorProvider1.SetError(teksPropinsi, "Harus 5 karakter.") 
        End If 
    End Sub 
    Private Sub
  teksJumlah_Validating(sender As Object, e As 
    System.ComponentModel.CancelEventArgs)
  Handles teksJumlah.Validating 
        ' Memvalidasi jumlah numerik dalam
  rentang nilai yang ditetapkan 
        Dim jumlahInteger As Integer 
        ' Mereset semua error sebelumnya 
        ErrorProvider1.SetError(teksJumlah,
  "") 
        Try 
            jumlahInteger =
  Integer.Parse(teksJumlah.Text) 
            If jumlahInteger < 1 Or
  jumlahInteger > 10 Then 
                ' Membatalkan event 
                e.Cancel = True 
                teksJumlah.SelectAll() 
               
  ErrorProvider1.SetError(teksJumlah, "Jumlah harus
  dalam rentang 1 sampai 10") 
            End If 
        Catch ex As Exception 
            ' Membatalkan event 
            e.Cancel = True 
            teksJumlah.SelectAll() 
           
  ErrorProvider1.SetError(teksJumlah, "Jumlah harus
  dalam rentang 1 sampai 10") 
        End Try 
    End Sub 
    Private Sub
  FormMaxLength_FormClosing(sender As Object, e As 
    FormClosingEventArgs)
  Handles MyBase.FormClosing 
        ' Tidak mengijinkan validasi untuk
  membatalkan penutupan form 
        e.Cancel = False 
    End Sub 
End Class | 













 
No comments:
Post a Comment