Bab 1
Pengenalan Visual Basic .NET
Microsoft .NET framework adalah teknologi yang dikembangkan oleh Microsoft yang saat ini sangat populer dan banyak digunakan di lapangan kerja. .NET memiliki keunggulan dari tool IDEnya yang sangat powerful dan class library yang sangat lengkap.
Struktur .NET Framework
Teknologi .NET muncul karena adanya beberapa alas an pada teknologi aplikasi Microsoft yang lama. Standar yang lama berbasiskan pada COM di mana memiliki berbagai macam keterbatasan, antara lain :
1. DLL Hell
Istilah ini sering kali dipakai oleh programmer untuk menyatakan masalah versi yang terjadi pada COM. Ketika COM mengalami perubahan atau pembaharuan seluruh aplikasi yang memakai component tersebut harus di compile ulang jika tidak sering terjadi Runtime Error.
Operating System
Windows 98 / Me / 2000 / XP and in the future Common Language Runtime
.NET Class Library Web Forms
Common Type System
2. Tidak cocok dengan platform lain
Standar COM tidak bisa diterapkan untuk platform atau mesin yan lain. Ketergantungannya terhadap system Win32 sangat tinggi. Sehingga untuk diterapkan pada mesin seperti PDA, Handphone sangat susah sekali.
3. Tidak mendukung inheritance
Komponen dalam COM tidak dapat diinheritance sehingga sangat sulit bagi programmer untuk mengembangkan lebih lanjut komponen yang sudah ada.
Dalam teknologi .NET teknik kompilasi yang terjadi pada source code program memiliki sedikit keunikan.
Kita akan mempelajari lebih lanjut dalam Windows Form untuk pembuatan aplikasi desktop dan menggabungkannya dengan komponen-komponen visual yang ada. Untuk memulai .NET kita harus menginstalasi tool yang kita gunakan terlebih dahulu yaitu Microsoft Visual Studio .NET 2003.
Teknologi .NET dapat dimanfaatkan untuk menciptakan berbagai jenis aplikasi, yaitu: 1. Windows Application
2. Windows Service
3. Web Application ( ASP.NET ) 4. Web Service
5. Smart Device Application
System Requirements
1. Operating System :
a. Windows 2000 with Service Pack 3 b. Windows XP with Service Pack 1 2. Minimum 256 MB RAM ( Recommended ) 3. Pentium 4 1.7GHz Processor or higher. 4. 4 GB Free Space Hard Drive
Source Code (VB) Source Code (C#)
MSIL ( Microsoft Intermediate Language
Native Code CLR
Untuk masuk ke Visual Studio .NET 2003 dapat memilih lewat Start Menu atau langsung klik Start > Run ketik devenv, kemudian klik Ok.
Pertama kita akan merancang form sederhana. Gunakanlah label, textbox dan button dari toolbox disamping.
Berikut ini adalah properties dari beberapa control dasar.
Label
Properties Keterangan
Backcolor Untuk mengatur warna background dari label.
BorderStyle Untuk mengatur jenis border untuk labelnya. Terdapat tiga buah pilihan, yaitu None, FixedSingle, dan Fixed3D.
Enabled Untuk mengeset apakah control dalam keadaan aktif.
Font Untuk mengatur jenis, ukuran, dan style dari Font.
ForeColor Untuk mengatur warna teks.
Text Untuk mengatur teks pada control.
TextAlign Untuk mengatur letak teks pada control.
Visible Untuk mengatur apakah control tampil di layer atau tidak.
Textbox
Properties Keterangan
Backcolor Untuk mengatur warna background dari label.
BorderStyle Untuk mengatur jenis border untuk labelnya. Terdapat tiga buah pilihan, yaitu None, FixedSingle, dan Fixed3D.
Enabled Untuk mengeset apakah control dalam keadaan aktif.
Font Untuk mengatur jenis, ukuran, dan style dari Font.
ForeColor Untuk mengatur warna teks.
MaxLength Untuk menentukan jumlah karakter maksimum yang dapat diinput.
MultiLine Nilainya adalah Boolean ( true / false ), untuk menentukan apakah suatu textbox dapat multiline ( lebih dari satu baris ).
PasswordChar Untuk menentukan karakter yang muncul pada saat input, biasa digunakan untuk penginputan password menggunakan mask.
ScrollBars Menentukan scroll bar yang muncul, berlaku jika textbox multilinenya true. ScrollBars yang Horizontal akan muncul ika nilai WordWrapnya false.
Text Untuk mengatur teks pada control.
TextAlign Untuk mengatur letak teks pada control.
Visible Untuk mengatur apakah control tampil di layer atau tidak.
WordWrap Menentukan apakah kursor akan pindah baris jika paa saat input kursor suah mencapai ujung textbox.
Button
Properties Keterangan
Backcolor Untuk mengatur warna background dari label.
Enabled Untuk mengeset apakah control dalam keadaan aktif.
Font Untuk mengatur jenis, ukuran, dan style dari Font.
ForeColor Untuk mengatur warna teks.
Text Untuk mengatur teks pada control.
TextAlign Untuk mengatur letak teks pada control.
Visible Untuk mengatur apakah control tampil di layer atau tidak.
Rancanglah formnya sebagai berikut, dan berilah penamaan pada masing-masing controlnya.
User akan diminta untuk memasukkan nilainya, yaitu TM, Mid, dan Final kemudian Nilai Akhirnya dihitung dari 20% TM, 30% Mid dan 50% Final. Untuk Grade menggunakan tabel berikut.
Nilai Akhir Grade
>= 85 A
>= 75 B
>= 65 C
Lain-lain D
Deklarasi Variabel
Contoh :
Tipe Data
Macam-macam tipe data dalam Visual Basic .NET
Tipe Data .NET Class Keterangan
Byte System.Byte (Structure) Tipe data ini berkisar antara 0-255.
Berukuran 1 byte.
Short System.Int16 (Structure) Tipe data ini dapat menampung
bilangan bulat antara -32,768 hingga 32,767. Tipe data ini berukuran 2 byte.
Integer System.Int32 (Structure) Tipe data ini dapat menampung
bilangan bulat antara -2,147,483,648 hingga 2,147,483,647. TIpe data ini berukuran 4 byte.
Long System.Int64 (Structure) Tipe data ini dapat menampung
bilangan bulat antara
-9,223,372,036,854,775,808 hingga 9,223,372,036,854,775,807
Single System.Single (Structure) Tipe data ini dapat menampung
bilangan real antara -3.4028235E+38 hingga -1.401298E-45 untuk nilai negative, sedangkan untuk nilai positif antara 1.401298E-45 hingga
3.4028235E+38
Double Systm.Double (Structure) Tipe data ini dapat menampung
bilangan real antara
-1.79769313486231570E+308 hingga -4.94065645841246544E-324
sedangkan untuk nilai positif antara 4.94065645841246544E-324 hingga 1.79769313486231570E+308 Decimal System.Decimal
(Structure)
Tipe data ini dapat menampung bilangan decimal dengan jumlah digit 0 sampai 28.
Boolean System.Boolean (Structure)
Tipe data ini hanya dapat menampung 2 jenis nilai, yaitu true dan false. Jika
direpresentasikan dengan angka nilai
false dinyatakan dengan 0 dan nilai true dinyatakan dengan nilai selain 0.
Date System.DateTime (Structure)
Tipe data ini dikhususkan untuk menampung nilai yang berupa tanggal dan waktu. Dengan memanfaatkan tipe data ini kita dapat mengolah data tanggal dengan memakai fungsi-fungsi tertentu.
Char System.Char (Structure) Tipe data ini hanya dapat menampung
satu buah karakter. Jika diisi lebih dari satu karakter maka secara otomatis akan dipotong menjadi satu.
Dim namavariable as tipedata
Dim tm as Integer
Dim mid as Integer
Dim final as Integer
String System.String ( Class ) Tipe data ini digunakan untuk menampung rangkaian karakter atau kata. Jumlah memory yang dipakai sesuai dengan jumlah karakter.
Konversi Implisit dan Eksplisit
Pada program di atas terjadi konversi antar tipe data secara implisit. Kita juga dapat melakukan konversi secara eksplisit.
Fungsi-fungsi konversi antar tipe data
Nama Fungsi Keterangan
CBool() Untuk mengkonversi suatu nilai menjadi tipe Boolean
CDbl() Untuk mengkonversi suatu nilai menjadi tipe Double
CObj() Untuk mengkonversi suatu nilai menjadi tipe Object
CByte() Untuk mengkonversi suatu nilai menjadi tipe Byte
CDec() Untuk mengkonversi suatu nilai menjadi tipe Decimal
CShort() Untuk mengkonversi suatu nilai menjadi tipe Short
CChar() Untuk mengkonversi suatu nilai menjadi tipe Char
CInt() Untuk mengkonversi suatu nilai menjadi tipe Integer
CSng() Untuk mengkonversi suatu nilai menjadi tipe Single
CDate() Untuk mengkonversi suatu nilai menjadi tipe Date
CLng() Untuk mengkonversi suatu nilai menjadi tipe Long
CStr() Untuk mengkonversi suatu nilai menjadi tipe String
Selain dari fungsi-fungsi di atas kita dapat menggunakan CType() untuk mengkonversi ke tipe data apa saja.
Dim n As Integer = 10 Dim s As String
Konversi eksplisit juga bisa dilakukan dengan menggunakan fungsi Convert.
Kemudian untuk membuat validasi kita bisa menggunakan Event KeyPress
Dengan coding di atas maka txtTM sudah divalidasi, sedangkan untuk txtMid dan txtFinal dapat dengan cara menambahkan pada header function di bagian
belakangnya dengan menggunakan event-eventnya yaitu txtMid.KeyPress an txtfinal.KeyPress.
Bagian ini dapat ditemukan di bagian belakang subnya.
Dim n As Single = 2.54 Dim s As String
s = Covert.ToString(n)
Bab 2
Control Flow
Struktur Pemilihan
Struktur If
Struktur Select Case
Struktur Perulangan
Perintah di atas akan melakukan perulangan sebanyak 10 kali. Pada perintah perulangan di atas STEP bersifat optional dan dapat dihilangkan.
Step menunjukkan pertambahan yang dilakukan di mana defaultnya adalah 1. Untuk nilai dari besar ke kecil gunakan nilai step yang negatif.
Struktur perulangan bermacam-macam dan dapat digunakan sesuai kebutuhan. i = 0
Do Until i = 10 ………
i = i + 1 Loop
i = 0
While i <= 10 ………
Bab 3
Sub dan Function
Dalam pemrograman kita dapat memecah perintah-perintah program dalam prosedur dan fungsi tertentu. Hal ini memudahkan dalam pemrograman karena lebih terstruktur, dan prosedur-prosedur yang ada dapat dipakai berulang kali, memudahkan untuk maintenance program, lebih mudah untuk mengidentifikasi bug.
Untuk membuat sub dapat menggunakan format di atas, untuk nama sub nya boleh bebas. Di dalam sub tersebut kita dapat memasukkan coding-coding yang diinginkan. Untuk memanggil sub tersebut dapat langsung seperti di bawah ini.
Selain Sub kita juga dapat membuat function di mana dapat memberikan nilai balik sesuai dengan tipe data yang diinginkan. Misalkan di bawah ini diberikan contoh fungsi yang mengembalikan nilai Boolean di mana fungsi ini mengecek apakah sebuah angka itu genap, jika ya maka mengembalikan nilai true sebaliknya mengembalikan nilai false.
Untuk menggunakan fungsi tersebut dapat langsung dipanggil seperti berikut ini.
Sub NamaSub()
Function IsGenap( N As Integer ) As Boolean If N Mod 2 = 0 Then
If IsGenap(10) Then
MessageBox.Show(“Genap”) Else
Menggunakan ComboBox
Buatlah program yang menggunakan ComboBox seperti di atas.
ComboBox
Properties Keterangan
DropDownStyle Mengatur tampilan dan fungsi dari combobox.
Enabled Untuk mengeset apakah control dalam keadaan aktif.
Items Item-item yang ada di dalam combobox.
MaxDropDownItem Untuk mengatur berapa jumlah yang ditampilkan pada saat drop down. MaxLength Untuk menentukan jumlah karakter maksimum yang dapat diinput.
Sorted Nilainya adalah Boolean ( true / false ), untuk menentukan apakah item di dalam combobox ingin diurutkan.
Text Adalah teks yang tercantum pada combobox. Merupakan teks yang dipilih.
Menambahkan item ke ComboBox
Kita dapat menggunakan code di bawah ini.
Membuang item tertentu dari ComboBox
Atau
Jika menggunakan RemoveAt maka parameternya berupa integer yang menyatakan indeks item yang mau dibuang. Dalam combobox item pertama dimulai dari indeks nol, kemudian satu, dua, dan seterusnya.
Membuang semua item dari ComboBox
ComboBox1.Items.Add(“Hello”)
ComboBox1.Items.Remove(“Hello”)
ComboBox1.Items.RemoveAt(2)
Mendapatkan jumlah item dalam ComboBox
Mengecek apakah suatu item ada di dalam ComboBox
Mencari indeks dari item yang ditentukan
Jika fungsi FindString mengembalikan nilai -1 berarti item tersebut tidak ada di dalam combobox.
Mendapatkan indeks item yang dipilih
Jika SelectedIndex mengembalikan nilai -1 maka berarti combobox tersebut belum ada item yang dipilih.
Dim jumlah As Integer = ComboBox1.Items.Count
If comboBox1.Items.Contains(“A”) Then MessageBox.Show(“Ada A”)
Else
MessageBox.Show(“Ada B”) End If
Dim indeks As Integer = ComboBox1.FindString(“A”) If indeks <> -1 Then
MessageBox.Show(“A ada di indeks ” & indeks) Else
MessageBox.Show(“A tidak ada di dalam combobox”) End If
Dim indeks As Integer = ComboBox1.SelectedIndex If indeks <> -1 Then
MessageBox.Show(“Pilihan anda di indeks ” & indeks) Else
Menggunakan ListBox
Buatlah program menggunakan Listbox seperti di atas. Kemudian randomlah sepuluh angka dan add ke dalam listbox. Tidak boleh ada angka yang berulang.
Cara merandom angka
Code di atas merandom angka yang bekisar dari 1-100 kemudian dimasukkan ke dalam n.
Method dan Property dar ComboBox sebagian besar sama dengan ListBox. Jadi untuk mengecek apakah suatu item sudah ada dalam combobox bisa menggunakan fungsi Items.Contains
Dim rand As New Random
Dim n As Integer = rand.Next(1,101)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Dim rand As New Random Do
Dim n As Integer = rand.Next(1, 101) If Not ListBox1.Items.Contains(n) Then ListBox1.Items.Add(n)
End If
Loop Until ListBox1.Items.Count = 10
Pada saat tombol ditekan maka semua item dari listbox1 akan berpindah ke listbox2. Codenya dapat kita buat seperti di bawah ini.
Atau lebih singkatnya dapat menggunakan code sebagai berikut.
Pada saat tombol ditekan maka item yang dipilih pada listbox1 akan berpindah ke listbox2. Kta dapat buat code sebagai berikut.
Pada saat awal kita harus cek dulu memastikan item pada listbox1 sudah ada yang terpilih ( nilai selectedindex tidak sama dengan -1 ), kemudian baru
menambahkannya ke listbox2 dan menghapusnya dari listbox1. For i As Integer = 0 To ListBox1.Items.Count - 1
ListBox2.Items.Add(ListBox1.Items(i)) Next
ListBox1.Items.Clear()
ListBox2.Items.AddRange(ListBox1.Items) ListBox1.Items.Clear()
If ListBox1.SelectedIndex <> -1 Then
ListBox2.Items.Add(ListBox1.Items(ListBox1.SelectedIndex)) ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
Bab 4
Menggunakan Control Lanjutan
PictureBox
PictureBox digunakan untuk menampilkan gambar. Tambahkan ke form anda sebuah PictureBox, kemudian untuk menambahkan gambar pada propertiesnya cari yang namanya Image kemudian pilih gambarnya.
PictureBox
Properties Keterangan
BorderStyle Untuk mengatur jenis border dari picturebox.
Image Untuk mengeset gambar yang akan ditampilkan.
SizeMode Untuk mengatur tampilan pada gambar.
CheckBox dan RadioButton
CheckBox
Properties Keterangan
Appereance Untuk mengatur tampilan dari checkbox.
CheckAlign Untuk menentukan letak check dari tulisannya.
Checked Untuk menentukan apakah di check atau tidak.
CheckState Untuk menentukan status check. Ada UnCheck, Checked, Indeterminate.
Text Teks yang tercantum pada textbox.
TextAlign Mengatur letak teks.
ThreeState Bernilai Boolean untuk menentukan apakah menggunakan mode tiga status check seperti yang ada di CheckState.
RadioButton
Properties Keterangan
Appereance Untuk mengatur tampilan dari checkbox.
CheckAlign Untuk mengatur letak checknya.
Checked Untuk menentukan apakah di check atau tidak.
Text Teks yang tercantum pada textbox.
Bab 5
Array dan Structure
Array
Dalam bab ini akan menelusuri lebih jauh array dalam Visual Basic. Cara pendeklarasian dari array adalah sebagai berikut.
Statement di atas menunjukkan bahwa kita membuat array dengan nama arr di mana masing-masing berupa integer dan terdiri dari 4 buah elemen.
Masing-masing elemen dapat diisi dengan sebuah integer. Misalkan kita ingin memasukkan sebuah integer ke dalam elemen pertama.
Untuk mengubah ukuran array kita dapat menggunakan redim.
statement di atas akan mengubah ukuran elemen dari arr menjadi 10 elemen. Tetapi semua data yang ada dalam array akan hilang. Untuk tetap mempertahankan data yang lama agar tak hilang kita gunakan redim preserve.
Statement di atas digunakan untuk mengubah ukuran dari array tanpa harus menghilangkan nilai-nilai yang telah ada sebelumnya.
Dim arr(3) As Integer
arr(0) = 5
redim arr(9)
Structure
Kita dapat menggunakan Structure. Contohnya sebagai berikut.
Dengan membuat code di atas berarti kita sudah membuat tipe data Mahasiswa, sehingga kita bias deklarasikan variabelnya.
Kita juga dapat mendeklarasikan dalam bentuk array seperti yang kita telah pelajari sebelumnya.
Structure Mahasiswa Dim Nim As String Dim Nama As String End Structure
Dim a As Mahasiswa
a.Nim = “0600612545” a.Nama = “Andi Rahardja”
Dim arr(1) As Mahasiswa
arr(0).Nim = “0600612545” arr(0).Nama = “Andi Rahardja”
Bab 6
String dan Timer
Dalam bab ini kita akan membahas class String termasuk fungsi-fnugsi String yang ada. String sangat banyak digunakan. Dalam code di bawah ini akan diberikan contoh penggunan String.
Kita akan membahas beberapa Property dan Method dari class string.
Properties Keterangan
Chars Mendapatkan karakter pada indeks yang ditentukan.
Length Mendapatkan jumlah karakter pada string.
Method Keterangan
Clone Mengembalikan reference ke instance ini.
Compare Membandingkan dua buah string.
Concat Untuk menggabungkan string.
Copy Membuat instance yang baru yang nilainya sama dengan instance.
Equals Mengecek apakah dua buah instance String memiliki nilai yang sama.
Format Untuk menampilkan dalam format tertentu.
IndexOf Mengembalikan indeks untuk string yang pertama kali ditemukan di dalam
string, jika ditemukan akan mengembalikan nilai indeks, jika tidak ketemu akan mengembalikan nilai -1.
IndexOfAny Untuk mengecek apakah masing-masing string dalam suatu array string ada di dalam string, jika ada akan mengembalikan nilai indeksnya, jika tidak ditemukan maka akan bernilai -1.
Insert Untuk menyisipkan suatu string ke dalam string pada indeks yang ditentukan
Join Menggabungkan separator String di antara semua String yang ada di dalam
array String.
LastIndex Sama seperti IndexOf hanya dicek mulai dari belakang. LastIndexOfAny Sama seperti IndexOfAny hanya dicek mulai dari belakang.
PadLeft Menambahkan karakter pada bagian kiri string, sesuai dengan widthnya dan diisi dengan spasi atau karakter yang ditentukan.
PadRight Menambahkan karakter pada bagian kanan string, sesuai dengan widthnya
dan diisi dengan spasi atau karakter yang ditentukan.
Remove Menghapus beberapa karakter mulai dari indeks yang ditentukan sebanyak
jumlah karakter yang ditentukan.
Replace Mengganti string yang lama dengan string yang baru.
Split Mengembalikan array yang merupakan hasil pecahan dari string awal sesuai dengan separator yang ditentukan.
StartsWith Bernilai Boolean. Untuk mengecek apakah suatu string diawali oleh suatu string yang diberikan.
SubString Untuk mengambil sebagai string dari string keseluruhan. ToCharArray Untuk mengkonversi ke dalam bentuk array dari karakter.
ToLower Untuk mengubah semua karakter menjadi huruf kecil.
ToString Untuk mengkonversi instance ini ke dalam String.
ToUpper Untuk mengubah semua karakter menjadi huruf besar.
Trim Membuang sekumpulan karakter pada awal dan akhir.
TrimEnd Membuang sekumpulan karakter pada bagian akhir.
TrimStart Membuang sekumpulan karakter pada bagian awal.
Timer
Tempatkan timer dalam project.
Timer akan diletakkan pada bagian bawah. Kemudian kita dapat mengubah propertiesnya.
Properties Keterangan
Enabled Untuk menentukan apakah timer aktif atau tidak.
Interval Untuk menentukan jeda waktu dalam milidetik untuk melakukan event Tick.
Untuk memberikan coding pada Timer kliklah dua kali pada Timernya maka akan masuk ke layar coding yaitu event Tick.
Jika kita memberikan nilai True pada property Enabled kemudian dengan interval 1000, maka setiap 1000 milidetik (1 detik) coding pada Sub di atas akan dijalankan dan akan berlangsung terus menerus dengan jeda 1 detik.
Pada bagian Form_Load juga jangan lupa untuk menambahkan code yang sama untuk menampilkan jam pada awal pada saat form ditampilkan.
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Label1.Text = Now.ToString("hh:mm:ss tt")
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Label1.Text = Now.ToString("hh:mm:ss tt")
Bab 7
Control Array
Kita dapat membuat suatu control melalui coding (tanpa menggunakan form design). Sebagai contoh kita perhatikan form di bawah ini.
Kita dapat membuat Button-Button tersebut dengan cara sebagai berikut.
Dim arr(2, 2) As Button Dim btn As New Button
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Untuk menambahkan event handler untuk control yang kita buat dengan coding dapat dengan AddHandler. Untuk warna selain menggunakan konstanta warna kita dapat membuat objek warna dengan menentukan RGBnya seperti contoh di atas yaitu menggunakan fungsi fromArgb.
Location untuk menentukan letak pada form.
Size digunakan untuk mengatur width dan heightnya. BackColor untuk menentukan warna buttonnya.
Me.Controls adalah array yang merupakan semua control yang ada di dalam form, jadi Button yang kita buat harus kita add ke dalam form. Kemudian untuk membuat event handler pada saat button tersebut click kita harus menyiapkan terlebih dahulu sub handlernya kemudian ditambahkan dengan menggunakan AddHandler.
btn.Location = New Point(10, 200) btn.Size = New Size(50, 50) btn.BackColor = Color.Red Me.Controls.Add(btn)
AddHandler btn.Click, AddressOf btnClick
Sub btnClick(ByVal sender As Object, ByVal e As EventArgs) ….
….
Bab 8
MDI
MDI singkatan dari Multiple Document Interface. Di mana terdapat form yang berperan sebagai parent form di mana dapat memiliki beberapa child form di dalamnya.
Untuk membuat MDI buatlah sebuah project baru dan beri nama UsingMDI. Pada Form1 ubah Properties IsMdiContainer menjadi true. Sehingga menghasilkan tampilan sebagai berikut.
Kemudian Ubahlah properties WindowState menjadi Maximized agar pada saat pertama kali form ditampilkan dalam keadaan maximized. Kemudian kita tambahkan main menu.
Kemudian kita menambahkan form pada project kita yang akan dibuat sebagai child formnya. Pada Solution Explorer > Klik kanan pada project > pilih Add > Add Windows Form.
Kemudian pada saat New di klik kita tambahkan coding berikut ini.
Untuk Arrange kita menggunakan method LayoutMdi.
Setelah itu coba tambahkan menu Forms di sebelah kanan menu Window, setelah itu ubah property MdiList menjadi True. Lihat hasilnya. Pada saat menu childnya dibuat maka akan muncul daftar form-formnya.
Private Sub mnuNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuNew.Click
Dim f As New Form2 f.MdiParent = Me f.Show()
End Sub
Private Sub mnuCascade_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCascade.Click
Me.LayoutMdi(MdiLayout.Cascade) End Sub
Private Sub mnuHoriz_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuHoriz.Click
Me.LayoutMdi(MdiLayout.TileHorizontal) End Sub
Private Sub mnuVert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuVert.Click
Toolbar
Toolbar adalah sebuah control yang terdiri dari tombol-tombol yang memiliki fungsi tertentu. Tombol-tombol pada toolbar biasanya diberi icon / gambar sebagai simbol.
Tambah Toolbar pada Form pertama kemudian masuk ke properties Button.
Pada bagian ini kita dapat mengatur tampilan button yang diinginkan. Untuk menggunakan gambar kita harus menambahkan ImageList ke form dan masuk ke property Images kemudian kita add satu-satu semua gambar yang ingin digunakan. Gambar-gambar pada toolbar harus diambil dari ImageList.
Tambahkanlah ImageList pada form.
Properties Keterangan
ColorDepth Untuk menentukan ColorDepth, semakin besar bits nya maka kualitas
gambar aka semakin bagus.
ImageSize Untuk menentukan width dan height dari gambar.
Pada layer ini kita dapat menambahkan gambar-gambar yang diinginkan.
Context Menu
Context menu dapat dimuncul diberbagai tempat. Misalkan kita ingin membuat context menu yang akan muncul pada saat kita meng-klik dropdown button pada toolbar.
Siapkan ContextMenu dan codingnya masing-masing terlebih dahulu.
Kemudian setelah context menu siap kita bisa masukkan ke button pada toolbar. Pada bagian Buttons, pada dialog propertiesnya set nilai dropdownMenu menjadi ContextMenu1.
Private Sub mnuConCascade_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuConCascade.Click
mnuCascade.PerformClick() End Sub
Private Sub mnuConHoriz_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuConHoriz.Click
mnuHoriz.PerformClick() End Sub
Private Sub mnuConVert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuConVert.Click
StatusBar
Jika kita ingin mengubah teks pada salah satu panel statusbar dapat langsung dari code kita ketik sebagai berikut.
Properties Keterangan
Alignment Untuk mengatur alignment terdapat pilihan Left, Right, Center.
AutoSize Untuk menentukan apakah ukuran panel akan secara otomatis berubah. BorderStyle Bentuk borderstyle untuk panel, terdapat dua macam Raisen dan Sunken.
Icon Icon untuk ditampilkan pada panel.
Text Teks yang ingin ditampilkan pada panel.
ToolTipText Teks keterangan ( tooltip ) yang akan muncul pada saat mouse berada pada control.
Width Mengatur lebar panel.
Bab 9
File Operation
Kita dapat menyimpan data ke dalam file. Data yang disimpan ini bersifat permanent tidak seperti memory yang hanya bersifat sementara. Untuk operasi baca dan tulis ke file kita dapat menggunakan class yang sudah disediakan oleh .NET yaitu berada dalam Namespace System.IO
Jadi pastikan pada layar coding tambahkan pada bagian paling atas.
Untuk baca file teks
Membaca semua teks secara langsung dan menampung hasilnya yang berupa string ke dalam variable.
Jika kita ingin membaca baris per baris pun bisa yaitu dengan cara sebagai berikut.
Untuk tulis ke file berupa teks
Jika kita ingin membuat file baru gunakan Mode CreateNew, atau Create jika ingin replace file yang sudah ada.
Dim f As New FileStream(“namafile.txt”, FileMode.Open) Dim rd As New StreamReader(f)
Dim hasil As String = rd.readToEnd()
rd.close() f.close()
Imports System.IO
Dim f As New FileStream(“namafile.txt”, FileMode.Open) Dim rd As New StreamReader(f)
Dim hasil As String = rd.readLine()
While hasil <> “” Then hasil = rd.readLine() End While
rd.close() f.close()
Dim f As New FileStream(“namafile.txt”, FileMode.CreateNew) Dim wr As New StreamWriter(f)
wr.write(“text to write to file”) wr.close()
Untuk menambahkan teks ke file
Untuk menambahkan teks pada file kita gunakan mode Append.
Untuk membaca file binary kita gunakan class BinaryReader dan BinaryWriter. Sedangkan untuk file teks kita bisa menggunakan class TextReader dan TextWriter.
Menggunakan CommonDialog
FontDialog
FontDialog digunakan untuk memilih jenis font.
Untuk menampilkan kotak dialognya dapat menggunakan fungsi showDialog.
Atau biasa kita buat seperti ini.
Coding ini akan mengecek terlebih dahulu apakah user pada saat pemilihan Font memilih tombol OK atau Cancel. Coding di dalam statement If hanya dijalankan bila user menjawab OK bukan Cancel. Font yang dipilih akan disimpan ke Font.
Dim f As New FileStream(“namafile.txt”, FileMode.Append) Dim wr As New StreamWriter(f)
wr.write(“text to write to file”) wr.close()
f.close()
FontDialog1.showDialog()
If FontDialog1.showDialog()=DialogResult.OK Then ….
…. End If
ColorDialog
Digunakan untuk memilih warna. Penggunaannya mirip dengan FontDialog.
Atau
Hasil pilihan warnanya akan ditampung di properties Color.
OpenFileDialog
Digunakan untuk menampilkan kotak dialog untuk pemilihan file untuk Open. ColorDialog1.showDialog()
If ColorDialog1.showDialog()=DialogResult.OK Then ….
…. End If
Untuk menampilkan masih sama yaitu menggunakan fungsi showDialog. File yang dipilih disimpan di properties FileName.
Kita dapat menambahkan filter pada dialog tersebut. If OpenFileDialog1.showDialog() = DialogResult.OK Then ……
…… …… End If
OpenFileDialog1.Filter = “Text files|*.txt|HTML files|*.htm;*.html|All files|*.*” If OpenFileDialog1.showDialog() = DialogResult.OK Then
Nama file yang dipilih disimpan di properties FileName.
SaveFileDialog
Penggunaan SaveFileDialog sama dengan OpenFileDialog hanya digunakan untuk tujuan save file bukan untuk open file.
Bab 10
Windows Control Library
Kemudian kita bisa menambahkan coding-coding tertentu yang akan tersimpan dalam control tersebut nanti. Selanjutnya waktu di compile file yang akan dhasilkan bukanlah application tetapi dll ( Dynamic Link Libraries ).
File dll ini merupakan komponen yang dapat kita add pada project kita selanjutnya. Kita tinggal menggunakan komponen tersebut dan mengintegrasikannya dengan komponen-komponen lainnya.
Kita dapat tambahkan beberapa properti.
Kemudian compilelah UserControl tersebut.
Akan muncul kotak dialog seperti di atas. UserControl tidak dapat langsung mengeluarkan output. Kita harus membuat project baru dan menambahkan komponennya. Buatlah project baru dan pada bagian toolbox sebelah kiri, kita dapat menambahkan komponen baru dengan klik kanan pilih Add/Remove Item.
Public Property FileName() As String Get
Kemudian drag drop-lah FileField pada form. Kemudian perhatikan pada bagian Propertiesnya akan muncul Properties yang kita buat FileName dan ButtonText.
Pada bagian Properties akan muncul Properties standar dari UserControl.
Ditambah dengan properties yang kita tambahkan dari coding yaitu FileName dan ButtonText. Property FileName akan berhubungan dengan teks yang ada pada Textbox sedangkan ButtonText akan berhubungan pada teks dari Button.
Seharusnya Textbox1 dan Button1 kita set properties Modifiernya private sehingga tidak dapat diakses dari FileField.
Bab 11
Windows Class Library
Berbeda dengan Windows Control Library yang ditujukan untuk membuat Control sendiri dengan menggabungkan control-control yang sudah ada menjadi suatu control baru, Class Library ini tidak mengarah ke komponen yang visual. Class Library adalah membuat class yang dapat kita gunakan fungsi-fungsi di dalamnya dan kita juga dapat melakukan inheritance dari class lain.
Misalkan kita membuat class baru sebagai turunan dari class lain, maka semua fitur dari class induknya akan diturunkan ke class anaknya. Kemudian kita tinggal menambahkan fitur baru tambahannya. Ini berguna jika seorang programmer ingin mengembangkan class buatan programmer lain, dia dapat meng-nheritance kemudian ditambahkan codenya.
Class CaesarChiper
Setelah dicompile akan menghasilkan dll yang dapat kita gunakan di project kita yang lain. Buatlah sebuah project dengan nama TesEncrypt.
Untuk menambahkan dll yang telah kita buat ke project baru kita ini kliklah pada menu Project > Add Reference.
Kemudian klik browse dan pilihlah file dll hasil kompilasi yang telah dibuat yaitu Encryption.dll. Setelah itu pada layar coding pada bagian paling atas tambahkan
Imports Encryption Public Class CaesarChiper
Private plain As String
Public Enum ProcessMode Encrypt
Decrypt End Enum
Public Property PlainText() As String Get
Private Sub btnEncrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEncrypt.Click
Dim c As New CaesarChiper c.PlainText = TextBox1.Text
TextBox2.Text = c.Process(1, CaesarChiper.ProcessMode.Encrypt) End Sub
Private Sub btnDecrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDecrypt.Click
Dim c As New CaesarChiper c.PlainText = TextBox2.Text