Modul Visual 1
Post on 07-Oct-2015
213 Views
Preview:
DESCRIPTION
Transcript
2Chapter 1Latihan 1Membuat program hello WorldBuat sebuah form dengan tampilan sebagai berikut :
Form1Properties Value
Name FrmUtamaBackColor PapayaWhip(bebas)FormBorderStyle FixedToolWindowStartPosition CenterScreen
Coding :Public Class FrmUtama
Private Sub BtnPesan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnPesan.Click
MsgBox("haloo..^_^", MsgBoxStyle.Information, "Pesan")End Sub
Private Sub BtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnQuit.Click
Me.Close()End Sub
End Class
Latihan 2 :Variable dan ContantaDesign form :
Label1Properties Value
Name LblJudulFont Segoe UI; 15ptText Welcome
Button1Properties Value
Name BtnPesanFlatStyle FlatText Pesan
Button2Properties Value
Name BtnQuitFlatStyle FlatText Quit
3Form1Properties Value
Name FrmUtamaBackColor PapayaWhip(bebas)FormBorderStyle FixedToolWindowStartPosition CenterScreen
Coding :
Public Class FrmUtama
'Dim singkatan dari dimensi, sudah digunakan sejak vb versi 1'Dim digunakan untuk mendaftarkan variable ke tipe2 nyaDim Nama As StringDim NPM As StringDim Tanggal As Date
'contoh mnggunakan constanta pada vb.netConst Angka1 As Integer = 10Const Angka2 As Double = 7
Private Sub BtnTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnTest.Click
'mengisi variableNama = "Boi"NPM = "4115.505.006.0001"Tanggal = Now.Date 'mangambil waktu sekarang dari komputer
'menampilkan variable pada textboxTxtNama.Text = NamaTxtNPM.Text = NPMTxtTanggal.Text = Tanggal
Button1Properties Value
Name BtnTestText Test
Button2Properties Value
Name BtnTambahText +
TextBox1Properties Value
Name TxtNama
TextBox2Properties Value
Name TxtNPM
Button3Properties Value
Name BtnKurangText -
TextBox3Properties Value
Name TxtTanggalButton4
Properties ValueName BtnKaliText xTextBox4
Properties ValueName TxtAngka1 Button5
Properties ValueName BtnBagiText /
TextBox5Properties Value
Name TxtAngka2GroupBox2
Properties ValueText | Contoh Constanta |
TextBox6Properties Value
Name TxtHasil
GroupBox1Properties ValueText :: Contoh Variable ::
4End Sub
Private Sub BtnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnTambah.Click
TxtAngka1.Text = Angka1TxtAngka2.Text = Angka2TxtHasil.Text = Angka1 + Angka2
End Sub
Private Sub BtnKurang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnKurang.Click
TxtAngka1.Text = Angka1TxtAngka2.Text = Angka2TxtHasil.Text = Angka1 - Angka2
End Sub
Private Sub BtnKali_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnKali.Click
TxtAngka1.Text = Angka1TxtAngka2.Text = Angka2TxtHasil.Text = Angka1 * Angka2
End Sub
Private Sub BtnBagi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles BtnBagi.Click
TxtAngka1.Text = Angka1TxtAngka2.Text = Angka2TxtHasil.Text = Angka1 / Angka2
End SubEnd Class
Latihan 3Deklarasi Variable dan Contanta secara global menggunakan moduleBuat seperti form latihan 2. Tambahkan sebuah module dengan cara klik kanan pada project(diSolution Explorer), kemudian klik add module.
Coding pada form sama dengan Latihan 2. Semua variable dan constanta dideklarasikandimodule. Berikut cara penulisannya :
Module Module_Var_dan_constPublic Nama As StringPublic NPM As StringPublic Tanggal As Date
Public Const Angka1 As Integer = 10Public Const Angka2 As Double = 7
End Module
5Chapter 2Conditional (If Then Else)
Latihan 1Buatlah Sebuah Form dengan design seperti gambar dibawah ini :
Coding :
Public Class Form1
Private Sub BtnCoba_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnCoba.Click
If OptBaso.Checked = True ThenMsgBox("Kamu suka baso", , "Pesan")
ElseIf OptIkan.Checked = True ThenMsgBox("Kamu suka ikan", , "Pesan")
ElseIf OptNasiPadang.Checked = True ThenMsgBox("Kamu suka Nasi Padang", , "Pesan")
ElseMsgBox("Kamu belum memilih", , "Pesan")
End IfEnd Sub
End Class
Latihan 2Buatlah Sebuah Form dengan design seperti gambar dibawah ini :
RadioButton1Properties Value
Name OptBasoText Baso
RadioButton3Properties Value
Name OptIkanText Ikan
RadioButton2Properties Value
Name OptNasiPadangText Nasi Padang
Button1Properties Value
Name BtnCobaText If
Form1Properties ValueName Form1FormBorderSyle FixedToolWindowText If Then Else
6Coding :
Public Class Form1
Private Sub BtnHitung_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnHitung.Click
If OptHitungPersegi.Checked = True ThenTxtHasilPersegi.Text = (Val(TxtPanjang.Text * TxtLebar.Text))
ElseIf OptHitungSegitiga.Checked = True ThenTxtHasilSegitiga.Text = (Val((0.5 * TxtAlas.Text) * TxtTinggi.Text))
End IfEnd Sub
Private Sub OptHitungPersegi_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles OptHitungPersegi.CheckedChanged
If OptHitungPersegi.Checked = True ThenGrpBoxPersegi.Enabled = TrueGrpBoxSegitiga.Enabled = False
End IfEnd Sub
Private Sub OptHitungSegitiga_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles OptHitungSegitiga.CheckedChanged
If OptHitungSegitiga.Checked = True ThenGrpBoxPersegi.Enabled = FalseGrpBoxSegitiga.Enabled = True
End IfEnd Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
TxtHasilPersegi.Enabled = FalseTxtHasilSegitiga.Enabled = False
End Sub
Private Sub BtnNew_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnNew.Click
'Membersihkan semua TextboxTxtAlas.Text = ""TxtHasilPersegi.Text = NothingTxtHasilSegitiga.Text = ""TxtLebar.Text = ""TxtPanjang.Text = NothingTxtTinggi.Text = ""OptHitungSegitiga.Checked = TrueTxtAlas.Focus()
End Sub
Private Sub BtnExit_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnExit.Click
Me.Close()End Sub
End Class
Latihan 3
7Buatlah Sebuah Form dengan design seperti gambar dibawah ini :
Coding :
Public Class Form1
Private Sub BtnTest_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnTest.Click
If CmbPilihan.Text = "Baso" ThenMsgBox("Pilihan Anda adalah baso", , "Pesan")TxtOutput.Text = CmbPilihan.Text
ElseIf CmbPilihan.Text = "Nasi Padang" ThenMsgBox("Pilihan Anda adalah Nasi Padang", , "Pesan")TxtOutput.Text = CmbPilihan.Text
ElseIf CmbPilihan.Text = "Nasi Goreng" ThenMsgBox("Pilihan Anda adalah Nasi Goreng", , "Pesan")TxtOutput.Text = CmbPilihan.Text
End IfEnd Sub
End Class
8Chapter 3Looping
Latihan 1Buat sebuah form dengan tampilan sebagai berikut :
Coding :Public Class Form1
#Region "Variable Class Form1"Dim i As Short
#End Region
#Region "Method"
Private Sub BtnForNext_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles BtnForNext.Click
LstAngka.Items.Clear()For Me.i = 1 To TxtJumlahLoop.Text
LstAngka.Items.Add(i)Next
End Sub
Private Sub BtnDoWhile_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles BtnDoWhile.Click
LstAngka.Items.Clear()i = 1Do While i TxtJumlahLoop.Text
LstAngka.Items.Add(i)
9i += 1Loop
End Sub
Private Sub BtnClear_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnClear.Click
TxtJumlahLoop.Text = ""LstAngka.Items.Clear()TxtJumlahLoop.Focus()
End Sub
Private Sub BtnExit_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnExit.Click
Me.Close()End Sub
#End Region
End Class
Latihan 2Buat sebuah form dengan tampilan sebagai berikut :
Coding :Public Class Form1
Dim i As Short
Private Sub BtnDoWhile_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles BtnDoWhile.Click
i = 10Do While i >= 1
LstAngka.Items.Add(i)i -= 1
LoopEnd Sub
Private Sub BtnRepeatDown_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles BtnRepeatDown.Click
i = 10Do Until i < 1
LstAngka.Items.Add(i)i -= 1
Loop
10
End Sub
End ClassLatihan 3Buat sebuah form dengan tampilan sebagai berikut :
Coding :Public Class Form1
#Region "Variable"Dim i, j As Short
#End Region
Private Sub BtnClear_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnClear.Click
TxtHasil.Text = ""TxtJmlDeret.Text = ""TxtJmlDeret.Focus()
End Sub
Private Sub BtnHasil_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnHasil.Click
i = 1j = 0Do While i
11
Chapter 4Modular Programming Languange
Latihan 1(Function)Buat sebuah form dengan tampilan sebagai berikut :
Coding :Public Class Form1
'ini fungsi(local) jumlah pake parameterFunction Jumlah(ByVal Bil1 As Integer, ByVal Bil2 As Integer) As Integer
Jumlah = Bil1 + Bil2Return Jumlah
End Function
Private Sub BtnFunction_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnFunction.Click
'pemanggilan fungsi dan pengiriman nilai ke parameterTxtHasil.Text = Jumlah(Bil1:=TxtAngka1.Text, Bil2:=Txtangka2.Text)
End Sub
Private Sub BtnFunction2_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnFunction2.Click
TxtHasil2.Text = Jumlah(Bil1:=TxtBil1.Text, Bil2:=TxtBil2.Text)End Sub
Private Sub BtnFunctionKali_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnFunctionKali.Click
'fungsi yang ini ada di module sebagai public function perkalianTxtHailKali.Text = Perkalian(Bil1:=Txt1.Text, Bil2:=Txt2.Text)
End Sub
Private Sub BtnForm2_Click(ByVal sender As System.Object, ByVal e As
12
System.EventArgs) Handles BtnForm2.ClickForm2.Show()
End Sub
End Class
Tambahkan sebuah Module pada solution Explorer dengan coding sebagai berikut :
Module Module1Public Function Perkalian(ByVal Bil1 As Integer, ByVal Bil2 As Integer) As
IntegerPerkalian = Bil1 * Bil2Return Perkalian
End FunctionEnd Module
Jika sudah maka tambahkan sebuah form lagi pada project anda dengan nama Form2. Berikutdesign tampilannya :
Coding :Public Class Form2
Private Sub Btnkali_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Btnkali.Click
Txthasil.Text = Perkalian(Bil1:=txtAngka1.Text, Bil2:=TxtAngka2.Text)End Sub
End Class
Latihan 2 (Procedure)Buatlah sebuah form dengan tampilan sebagai berikut :
13
Coding :Public Class Form1
#Region "Procedure"
Sub DoUntil()Dim Counter As IntegerCounter = 1Do
LstHasil.Items.Add(Counter)Counter += 1
Loop Until Counter > TxtJumlahLoop.TextEnd Sub
Sub ForDown()Dim Counter As Integer'Step berfungsi untuk pertambahan nilaiFor Counter = TxtJmlLoop.Text To 1 Step -1
LstLoop.Items.Add(Counter)Next
End Sub
Sub Bersihin_TextBox()TxtJmlLoop.Text = ""TxtJumlahLoop.Text = ""LstHasil.Items.Clear()LstLoop.Items.Clear()TxtJumlahLoop.Focus()
End Sub
Sub Keluar()Me.Close()
End Sub
14
#End Region
Private Sub BtnDoUntil_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnDoUntil.Click
Call DoUntil()End Sub
Private Sub BtnForDown_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnForDown.Click
Call ForDown()End Sub
Private Sub BtnClear_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnClear.Click
Call Bersihin_TextBox()End Sub
Private Sub BtnExit_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles BtnExit.Click
Call Keluar()End Sub
End Class
15
Chapter 5Array
Latihan 1(Array)Buat sebuah form dengan tampilan sebagai berikut :
Coding :Public Class Form1
Dim Jumlah_Alamat As IntegerDim index_Code, Alamat_Terakhir As ShortDim Total_Harga, Harga_Barang, Jumlah_Barang As DoubleDim i, Counter, idx As ShortDim Array_Kode_Barang(100) As StringDim Array_Nama_Barang(100) As StringDim Array_Supplier(100) As StringDim Array_Jumlah(100) As IntegerDim Array_Harga_Barang(100) As Integer
#Region "Procedure"
Sub Create_Array()'Isi default dataArray_Kode_Barang(1) = "0001"Array_Kode_Barang(2) = "0002"Array_Kode_Barang(3) = "0003"Array_Kode_Barang(4) = "0004"
Array_Nama_Barang(1) = "Processor"Array_Nama_Barang(2) = "Mainboard"Array_Nama_Barang(3) = "RAM"Array_Nama_Barang(4) = "Harddisk"
Array_Supplier(1) = "Boi"Array_Supplier(2) = "Umar"Array_Supplier(3) = "Babeh"Array_Supplier(4) = "Adji"
16
Array_Jumlah(1) = 20Array_Jumlah(2) = 30Array_Jumlah(3) = 35Array_Jumlah(4) = 60
Array_Harga_Barang(1) = 1200000Array_Harga_Barang(2) = 750000Array_Harga_Barang(3) = 200000Array_Harga_Barang(4) = 400000
End Sub
Sub Tampilkan_Array_Pertama()TxtKodeBarang.Text = Array_Kode_Barang(1)TxtNamaBarang.Text = Array_Nama_Barang(1)TxtSuplier.Text = Array_Supplier(1)TxtJumlah.Text = Array_Jumlah(1)TxtHargaBarang.Text = Array_Harga_Barang(1)index_Code = 1
End Sub
Sub Tampilkan_Array_Terakhir()TxtKodeBarang.Text = Array_Kode_Barang(Alamat_Terakhir)TxtNamaBarang.Text = Array_Nama_Barang(Alamat_Terakhir)TxtSuplier.Text = Array_Supplier(Alamat_Terakhir)TxtJumlah.Text = Array_Jumlah(Alamat_Terakhir)TxtHargaBarang.Text = Array_Harga_Barang(Alamat_Terakhir)index_Code = Alamat_Terakhir
End Sub
Sub Hitung_Total_Harga()Jumlah_Barang = TxtJumlah.TextHarga_Barang = TxtHargaBarang.TextTotal_Harga = Jumlah_Barang * Harga_BarangTxtTotalHarga.Text = "Rp. " & Format(Total_Harga, "###,###")
End Sub
Sub Insert_Array()Array_Kode_Barang(i) = TxtKodeBarang.TextArray_Nama_Barang(i) = TxtNamaBarang.TextArray_Supplier(i) = TxtSuplier.TextArray_Jumlah(i) = TxtJumlah.TextArray_Harga_Barang(i) = TxtHargaBarang.Texti += 1Alamat_Terakhir += 1
End Sub
Sub Cek_Array_apakah_sudah_Full()If Alamat_Terakhir = Jumlah_Alamat Then
BtnSave.Enabled = FalseBtnCreate.Enabled = TrueTxtJumlahAlamat.Enabled = TrueTxtJumlahAlamat.Text = ""Call Tampilkan_Array_Pertama()Call Hitung_Total_Harga()
End IfEnd Sub
Sub Bersihkan_Textbox()TxtKodeBarang.Text = ""TxtNamaBarang.Text = ""TxtSuplier.Text = ""TxtJumlah.Text = ""TxtHargaBarang.Text = ""TxtTotalHarga.Text = ""
17
End Sub
Sub Search_Array()Counter = 0While (Counter
18
Private Sub BtnPrevious_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnPrevious.Click
If index_Code
19
Chapter 6MDI & System Interaction
Latihan 1Buat sebuah form MDI dengan tampilan sebagai berikut :
Coding :Public Class Form1
Sub SystemUpTime()Dim dblTick As DoubleDim intHour As IntegerDim intMinute As IntegerDim intSec As Integer
'Mendapatkan total waktu dalam detik sejak system dihidupkandblTick = Environment.TickCount / 1000
'menghitung total jam, menit dan detikintHour = CInt(Int(dblTick / 3600))dblTick = dblTick - (Int(dblTick / 3600) * 3600)intMinute = CInt(Int(dblTick / 60))dblTick = dblTick - (Int(dblTick / 60) * 60)intSec = CInt(dblTick)
'OutputkanTsrSystemUp.Text = "System Up = " & intHour & " jam : " & _
intMinute & " menit : " & _intSec & " detik"
End Sub
Private Sub KeyboardToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesKeyboardToolStripMenuItem.Click
FrmKeyboard.MdiParent = MeFrmKeyboard.Show()
20
End Sub
Private Sub MouseToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesMouseToolStripMenuItem.Click
FrmMouse.MdiParent = MeFrmMouse.Show()
End Sub
Private Sub TaskManajerToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesTaskManajerToolStripMenuItem.Click
FrmTaskManager.MdiParent = MeFrmTaskManager.Show()
End Sub
Private Sub TmrSystemUp_Tick(ByVal sender As System.Object, ByVale As System.EventArgs) Handles TmrSystemUp.Tick
Call SystemUpTime()End Sub
Private Sub ServiceManagerToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesServiceManagerToolStripMenuItem.Click
FrmService.MdiParent = MeFrmService.Show()
End Sub
Private Sub SegitigaToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesSegitigaToolStripMenuItem.Click
Me.Close()End Sub
Private Sub TileHorizontalToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesTileHorizontalToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.TileHorizontal)End Sub
Private Sub TileVerticalToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesTileVerticalToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.TileVertical)End Sub
Private Sub CascadeToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesCascadeToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.Cascade)End Sub
Private Sub ArrangeByIconToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesArrangeByIconToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.ArrangeIcons)End Sub
Private Sub AboutToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesAboutToolStripMenuItem.Click
21
AboutBox.MdiParent = MeAboutBox.Show()
End SubEnd Class
Tambahkan beberapa form dengan tampilan sebagai berikut :
22
Coding Form Keyboard :Public Class FrmKeyboard
Private Sub TxtKey_KeyDown(ByVal sender As Object, ByVal e AsSystem.Windows.Forms.KeyEventArgs) Handles TxtKey.KeyDown
Me.LblInfo.Text = ""LblInfo.Text &= "KeyCode: " & _
e.KeyCode.ToString & vbCrLf & _"KeyData: '" & e.KeyData.ToString & _vbCrLf & "KeyValue: " & e.KeyValue
End Sub
Private Sub TxtKey_KeyPress(ByVal sender As Object, ByVal e AsSystem.Windows.Forms.KeyPressEventArgs) Handles TxtKey.KeyPress
Me.TxtKey.Text = ""Me.Text = "Key: " & e.KeyChar
End SubEnd Class
Coding Form Mouse :Public Class FrmMouse
Sub Clear()LblMouseLeft.Text = "-"LblMouseMiddle.Text = "-"LblMouseRight.Text = "-"
End Sub
Private Sub FrmMouse_MouseDown(ByVal sender As Object, ByVal e AsSystem.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button = Windows.Forms.MouseButtons.Left ThenLblMouseLeft.Text = "Left Click"
ElseIf e.Button = Windows.Forms.MouseButtons.Middle ThenLblMouseMiddle.Text = "Middle Click"
ElseIf e.Button = Windows.Forms.MouseButtons.Right ThenLblMouseRight.Text = "Right Click"
End IfEnd Sub
Private Sub FrmMouse_MouseMove(ByVal sender As Object, ByVal e AsSystem.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
Me.Text = "X = " & e.X.ToString() & _", Y = " + e.Y.ToString()
End Sub
Private Sub FrmMouse_MouseWheel(ByVal sender As Object, ByVal e AsSystem.Windows.Forms.MouseEventArgs) Handles Me.MouseWheel
If e.Delta > 0 ThenMe.Text = "Up Scrolling"Clear()
ElseMe.Text = "Down Scrolling"Clear()
End IfEnd Sub
Private Sub FrmMouse_Load(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles MyBase.Load
23
Call Clear()End Sub
End Class
Coding Form Task Manager :Public Class FrmTaskManager
Sub GetProcess()Me.Lvw.Items.Clear()Dim oProc As New Process
'mendapatkan semua koleksi current prosesDim oProcess() As Diagnostics.Process = _
Process.GetProcesses()
For Each oProc In oProcess'masukan nama proses dan status ke listviewWith Me.Lvw.Items.Add(oProc.ProcessName)
.SubItems.Add(oProc.Responding.ToString)End With
Next oProcoProc.Dispose()
End Sub
Private Sub BtnNewTask_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles BtnNewTask.Click
Dim oIdlg As Object, strNew As StringoIdlg = InputBox("Nama Proses: ", _
"Buat Proses Baru")strNew = DirectCast(oIdlg, String)
If (strNew.Trim.Length 0) Then'Menjalankan proses baruProcess.Start(strNew)'Reload ProsesCall GetProcess()
End IfEnd Sub
Private Sub BtnEndTask_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles BtnEndTask.Click
Dim oProc As Process, arrProc() As ProcessTry
If Me.Lvw.SelectedItems.Count = 1 Then'mendapatkan proses berdasarkan namaarrProc = Process.GetProcessesByName( _
Me.Lvw.SelectedItems(0).Text)For Each oProc In arrProc
'perintah untuk menuptup sendiriIf oProc.Responding Then
oProc.CloseMainWindow()Else
'hentikan segeraoProc.Kill()
End IfNext oProc
End IfCatch ex As Exception
MessageBox.Show(ex.ToString)End Try
24
End Sub
Private Sub FrmTaskManager_Load(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles MyBase.Load
Call GetProcess()End Sub
End Class
Coding Form Service :Public Class FrmService
Private selectedSC As ServiceProcess.ServiceControllerPrivate selectedSCName As String
Private Function GetServiceTable() As DataTableDim dt As New DataTabledt.Columns.Add("Service Name")dt.Columns.Add("Display Name")dt.Columns.Add("Status")
Dim arrSC() As ServiceProcess.ServiceControllerDim mySC As ServiceProcess.ServiceControllerDim drw As DataRow
'mendapatkan service disistemarrSC = ServiceProcess.ServiceController.GetServices()
For Each mySC In arrSCdrw = dt.NewRowdrw.Item("Service Name") = mySC.ServiceNamedrw.Item("Display Name") = mySC.DisplayNamedrw.Item("Status") = mySC.Status.ToStringdt.Rows.Add(drw)
Next mySCReturn dt
End Function
Private Sub LoadService()Threading.Thread.Sleep(5000)Me.grd.DataSource = GetServiceTable()Me.grd.Refresh()Application.DoEvents()
End Sub
Private Sub FrmService_Load(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles MyBase.Load
LoadService()End Sub
Private Sub RefreshSelected()selectedSC.Refresh()LoadService()
End Sub
End Class
25
Chapter 7VB.NET Database Connection I
Latihan 1Buatlah sebuah database menggunakan MS Access dengan nama database dbMahasiswa.Kemudian buat sebuah table baru dengan nama TMahasiswa. Berikut struktur tablenya :
Gambar 7.1
Koneksi yang akan kita gunakan kali ini adalah dengan menggunakan file DSN. DSN (DataSource Name) adalah sebuah file yang digunakan sebagai sumber data untuk mengkoneksikanantara Database (Back End) dengan VB.NET (Front End). Sebelum membuat program terlebihdahulu kita harus membuat file DSN-nya dulu. Berikut langkah langkah pembuatannya :
1. Pada Control Panel, klik ganda icon Administrative Tools, kemudian klik gandaData Source (ODBC).
2. Pilih tab User DSN.3. Lanjutkan pembuatan sumber data baru dengan mengklik Add, dan akan terlihat kotak
dialog Create New Data Source.4. Karena kita menggunakan database MS access, pilih driver Microsoft Access
Driver(*.mdb), kemudian klik Finish.5. Langkah selanjutnya adalah menentukan nama DSN dan memilih database MS Access,
perhatikan contohnya pada gambar 7.2.
26
Gambar 7.2
Buat sebuah form dengan tampilan sebagai berikut :
Gambar 7.3
Tambahkan sebuah komponen ODBCDataAdapter pada form. Setelah ditambahkan makaakan muncul kotak dialog Data Adapter Wizard. Lakukan konfigurasi pada komponen ini,berikut langkah-langkahnya :
27
Gambar 7.4
1. Klik New Connection untuk membuat koneksi baru, kemudian akan terlihat kotakdialog Add Connection. Berikut gambarnya :
Gambar 7.5
28
2. Pilih data source namenya dengan nama file DSN yang telah kita buat pada ControlPanel tadi. Jangan lupa mengganti Data Source dengan Microsoft ODBC Data Source(ODBC) dengan mengklik tombol Change.
3. Kemudian klik Ok.4. Lanjutkan pembuatan koneksi dengan mengklik tombol Next, pilih SQL Statement,
Next lagi, buat sebuah query dengan Query Builder.5. Kemudian Next dan Finish.
Coding :Imports System.Data.OdbcImports System.Data
Public Class Form1
#Region "Kumpulan Variable"
Dim Result As IntegerDim connStr As String = "DSN=MyDSN"Dim Conn As OdbcConnection = NothingDim Sql As String = NothingDim ds As DataSet = NothingDim dr As DataRow = NothingDim dt As DataTable = NothingDim currRow As Integer = Nothing
#End Region
#Region "Kumpulan Procedure"
Sub BlankForm()txtNPM.Text = ""txtNama.Text = ""txtJurusan.Text = ""txtNPM.Focus()
End Sub
Sub Navigasi(ByVal tombol As Boolean)btnAdd.Enabled = tombolbtnSave.Enabled = Not tombolBtnCancel.Enabled = Not tombolbtnEdit.Enabled = tombolbtnDelete.Enabled = tombol
End Sub
Sub ListRecord()Try
ds = New DataSet("TMahasiswa")Me.OdbcDataAdapter1.Fill(ds)'Menambahkan DataTable ke datasetMe.OdbcDataAdapter1.FillSchema(ds, SchemaType.Source,
"TMahasiswa")'Menggunkan commandBuilderDim cmdBuild As OdbcCommandBuilder = New
OdbcCommandBuilder(OdbcDataAdapter1)currRow = 0ShowData()DGView.DataSource = dsDGView.DataMember = "TMahasiswa"
29
Catch ex As ExceptionMsgBox(ex.Message.ToString)
End TryNavigasi(True)
End Sub
Sub ShowData()txtNPM.Text = ds.Tables("TMahasiswa").Rows(currRow) _
("npm").ToString()txtNama.Text = ds.Tables("TMahasiswa").Rows(currRow) _
("nama").ToString()txtJurusan.Text = ds.Tables("TMahasiswa").Rows(currRow) _
("jurusan").ToString()End Sub
Sub Refresh_ODBC()Try
ds = New DataSetOdbcDataAdapter1.Fill(ds)currRow = 0Call ShowData()Navigasi(True)
Catch ex As ExceptionMsgBox("Error : " & ex.Message)
End TryEnd Sub
Sub saveData()dt = ds.Tables("TMahasiswa")Try
dr = dt.NewRow()dr("npm") = txtNPM.Textdr("nama") = txtNama.Textdr("jurusan") = txtJurusan.Text
dt.Rows.Add(dr)
OdbcDataAdapter1.Update(ds, "TMahasiswa")DGView.Refresh()
Catch ex As ExceptionMsgBox("Insert Err : " & ex.Message)
End TryEnd Sub
Sub editData()dt = ds.Tables("TMahasiswa")Try
dr = dt.Rows.Find(txtNPM.Text)dr.BeginEdit()dr("npm") = txtNPM.Textdr("nama") = txtNama.Textdr("jurusan") = txtJurusan.Textdr.EndEdit()OdbcDataAdapter1.Update(ds, "TMahasiswa")DGView.Refresh()
Catch ex As ExceptionMsgBox("Edit Error : " & ex.Message)
End TryEnd Sub
Sub deleteData()
30
dt = ds.Tables("TMahasiswa")Try
dr = dt.Rows.Find(txtNPM.Text)dr.Delete()OdbcDataAdapter1.Update(ds, "TMahasiswa")DGView.Refresh()
Catch ex As ExceptionMsgBox("Delete Error : " & ex.Message)
End TrycurrRow = ds.Tables("TMahasiswa").Rows.Count - 1Call ShowData()
End Sub
#End Region
#Region "Kumpulan Event"
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnSave.Click
Call saveData()Navigasi(True)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
Call ListRecord()End Sub
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles btnAdd.Click
Call BlankForm()Navigasi(False)
End Sub
Private Sub BtnCancel_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles BtnCancel.Click
Call ListRecord()Navigasi(True)
End Sub
Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnEdit.Click
Call editData()End Sub
Private Sub btnNext_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnNext.Click
If currRow < ds.Tables("TMahasiswa").Rows.Count - 1 ThencurrRow += 1
End IfCall ShowData()
End Sub
Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnFirst.Click
currRow = 0Call ShowData()
End Sub
Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles btnPrevious.Click
31
If currRow > 0 ThencurrRow -= 1
End IfCall ShowData()
End Sub
Private Sub btnLast_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnLast.Click
currRow = ds.Tables("TMahasiswa").Rows.Count - 1Call ShowData()
End Sub
Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnDelete.Click
Dim msg As DialogResultmsg = MessageBox.Show("Yakin mau menghapus data Mahasiswa " &
_
"dengan NPM : " & txtNPM.Text & "..??", _
"Konfirmasi", MessageBoxButtons.YesNo,_
MessageBoxIcon.Question, _MessageBoxDefaultButton.Button2)
TryIf (msg = DialogResult.Yes) Then
Call deleteData()End If
Catch ex As ExceptionMsgBox("Gagal : " & ex.Message)
End TryEnd Sub
Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnSearch.Click
Dim Result As String = NothingCall ListRecord()
TryWhile Result txtSearch.Text
Result =ds.Tables("TMahasiswa").Rows(currRow)("npm").ToString
currRow += 1End While
Catch ex As ExceptionMsgBox("Data Tidak ada", 64, "Mesin Pencari")txtSearch.Text = ""txtSearch.Focus()
End Try
currRow -= 1ShowData()
End Sub
#End Region
End Class
32
Chapter 8VB.NET (Crystal Report Approaching)
Latihan 1Pada Latihan ini kita akan membuat sebuah laporan menggunakan Crystal Report. Kali ini kitaakan membuat laporan database mahasiswa. Program yang dari pertemuan sebelumnya.Langkah langkah yang harus kita lakukan dalam pembuatan report atau laporan ini adalahsebagai berikut :
1. Tambahkan komponen Crystal Report pada program.2. Selanjutnya lakukan setting pada komponen tersebut.
Lakukan seting awal sesuai dengan gambar diatas.3. Seting koneksi dengan mengklik folder New Connection ODBC(RDO)
33
4. Setelah diklik maka akan muncul kotak dialog Data Source Selection. Pilih DSN yangtelah kita buat sebelumnya (MyDSN), kemudian klik Next Finish
5. setelah itu akan muncul kotak dialog yang awal tadi, lakukan seting seperti gambarberikut :
34
6. Klik Finish.7. Tambahkan sebuah komponen lagi, yaitu CristalReportViewer, kemudian tanamkan
pada form. Berikut gambar designnya :
35
8. Tambahkan sebuah procedure untuk menampilkan report tersebut.
Sub Tampil_Report()Dim rpt As New CrystalReport1Try
Me.CrystalReportViewer1.ReportSource = rptCatch ex As Exception
MessageBox.Show(ex.Message.ToString)End Try
End Sub
9. Panggil procedure Tampil_Report pada event form Load, save, edit dan delete.
36
Chapter 9VB 6.0 Database Connection I
Latihan 1Buatlah sebuah database menggunakan MS Access dengan nama database dbPenjualan.Kemudian buat sebuah table baru dengan nama TBarang. Berikut struktur tablenya :
Gambar 7.1
Koneksi yang akan kita gunakan kali ini adalah dengan menggunakan file DSN. DSN (DataSource Name) adalah sebuah file yang digunakan sebagai sumber data untuk mengkoneksikanantara Database (Back End) dengan VB.NET (Front End). Sebelum membuat program terlebihdahulu kita harus membuat file DSN-nya dulu. Berikut langkah langkah pembuatannya :
6. Pada Control Panel, klik ganda icon Administrative Tools, kemudian klik gandaData Source (ODBC).
7. Pilih tab File DSN.8. Lanjutkan pembuatan sumber data baru dengan mengklik Add, dan akan terlihat kotak
dialog Create New Data Source.9. Karena kita menggunakan database MS access, pilih driver Microsoft Access
Driver(*.mdb), kemudian klik Finish.10. Langkah selanjutnya adalah menentukan nama DSN dan memilih database MS Access,
perhatikan contohnya pada gambar 7.2.
Buat sebuah form dengan tampilan sebagai berikut :
Gambar 7.3
37
Tambahkan sebuah komponen Adodc pada form, dan lakukan seting koneksi database padakomponen tersebut. Berikut langkah langakah koneksinya :
1. Klik kanan pada komponen Adodc kemudian klik Adodc Properties.2. Pada Tab General pilih Use Data Link File kemudian Browse file DSN yang telah kita
buat sebelumnya. Lihat gambar berikut :3.
4. Kemudian pilih Tab RecordSource. Pada ComboBox Command Type pilih pilihan 2-adTmdTable, pada comboBox Table pilih table database yang akan ditampilkan atauyang akan diproses. Lihat gambar berikut :
5. Klik OK.
Coding :Sub hitungHargaTotal()
On Error Resume NextIf txtHargaSatuan.Text = "" Then
txtHargaTotal.Text = ""Else
txtHargaTotal.Text = Val(txtHargaSatuan.Text * txtStock.Text)End If
38
End Sub
Sub Blankform()txtKodeBarang.Text = ""txtNamaBarang.Text = ""txtStock.Text = ""txtHargaSatuan.Text = ""txtHargaTotal.Text = ""
End Sub
Sub Navigasi(Tombol As Boolean)cmdNew.Enabled = TombolcmdSave.Enabled = Not TombolcmdCancel.Enabled = Not TombolcmdEdit.Enabled = TombolcmdDelete.Enabled = TombolcmdClose.Enabled = Tombol
End Sub
Sub Navigasi2(Tombol As Boolean)cmdFirst.Enabled = Not TombolcmdLast.Enabled = Not TombolcmdBack.Enabled = Not TombolcmdNext.Enabled = Not Tombol
End Sub
Sub ListRecord()txtKodeBarang.Text = adoBarang.Recordset!kode_barangtxtNamaBarang.Text = adoBarang.Recordset!nama_barangtxtStock.Text = adoBarang.Recordset!stocktxtHargaSatuan.Text = adoBarang.Recordset!harga_satuantxtHargaTotal.Text = adoBarang.Recordset!harga_total
End Sub
Private Sub cmdBack_Click()adoBarang.Recordset.MovePreviousIf adoBarang.Recordset.BOF Then
adoBarang.Recordset.MoveNextMsgBox "Ini yang pertama", vbInformation, "Data Barang"
End IfCall ListRecord
End Sub
Private Sub cmdCancel_Click()adoBarang.Recordset.MoveLastadoBarang.Recordset.DeleteadoBarang.Recordset.MoveFirstCall ListRecordNavigasi TrueNavigasi2 False
End Sub
Private Sub cmdClose_Click()On Error Resume NextUnload Me
End Sub
Private Sub cmdDelete_Click()Dim Hapus As String
39
Hapus = MsgBox("Data Barang " & txtNamaBarang.Text & " akandihapus ?", vbInformation + vbOKCancel, "Deleter")
If Hapus = vbOK ThenadoBarang.Recordset.DeleteadoBarang.Recordset.MoveFirstCall ListRecord
End IfEnd Sub
Private Sub cmdEdit_Click()With adoBarang.Recordset
!kode_barang = txtKodeBarang.Text!nama_barang = txtNamaBarang.Text!stock = txtStock.Text!harga_satuan = txtHargaSatuan.Text!harga_total = txtHargaTotal.Text
End WithadoBarang.Recordset.UpdateMsgBox "Data telah diupdate", vbExclamation, "Updater"
End Sub
Private Sub cmdFirst_Click()adoBarang.Recordset.MoveFirst
End Sub
Private Sub cmdLast_Click()adoBarang.Recordset.MoveLast
End Sub
Private Sub cmdNew_Click()adoBarang.Recordset.AddNewCall BlankformtxtKodeBarang.Text = "B-"Navigasi FalseNavigasi2 True
End Sub
Private Sub cmdNext_Click()On Error Resume NextadoBarang.Recordset.MoveNextIf adoBarang.Recordset.EOF Then
adoBarang.Recordset.MoveLastMsgBox "Ini yang terakhir", vbInformation, "Data Barang"
End IfCall ListRecord
End Sub
Private Sub cmdSave_Click()With adoBarang.Recordset
!kode_barang = txtKodeBarang.Text!nama_barang = txtNamaBarang.Text!stock = txtStock.Text!harga_satuan = txtHargaSatuan.Text!harga_total = txtHargaTotal.Text
End With
MsgBox "Data barang telah disimpan", vbExclamation, "Storager"adoBarang.Recordset.MoveLastCall ListRecord
End Sub
40
Private Sub cmdSearch_Click()Dim StrCari As StringStrCari = InputBox("Kode Barang : ", "Searching", "")If StrCari = Empty Then
MsgBox "Batalkan pencarian"Exit Sub
End If
adoBarang.Recordset.MoveFirstadoBarang.Recordset.Find ("kode_barang='" & StrCari & "'")If adoBarang.Recordset.EOF Then
MsgBox " Data Barang ga da", vbInformation, "Not Found"adoBarang.Recordset.MoveFirstCall ListRecordExit Sub
End IfEnd Sub
Private Sub Form_Load()Navigasi TrueadoBarang.RefreshCall ListRecord
End Sub
Private Sub txtHargaSatuan_Change()Call hitungHargaTotal
End Sub
41
Chapter 10VB 6.0 Data Report
Latihan 1Buatlah sebuah koneksi yang baru dengan menggunakan Data Environtment, caranya adalahdengan klik kanan pada Project Add Data Environtment. Selanjutnya akan muncul sebuahkotak dialog seperti gambar berikut ini :
Gambar 1 Data Environment
Lakukan setting koneksi pada DataEnvironment1 dengan langkah langkah sebagai berikut :
1. Klik pada Connection1 kemudian ubah properties nama menjadi ConnPenjualan.2. Klik kanan pada ConnPenjualan Properties, maka akan muncul sebuah kotak dialog
seperti pada gambar dibawah ini :
Gambar 2 Data Link Properties
3. Pada Tab Provider, pilih provider sesuai dengan DBMS yang kita gunakan. Karenakita menggunakan MS Access maka kita pilih Microsoft Jet 4.0 OLE DB Provider.
42
Selanjutnya klik tombol Next, maka kita akan dihadapkan langsung dengan TabConnection seperti pada gambar berikut ini :
Gambar 3 Connection
4. Browse database yang telah kita buat, kemudian klik tombol Test Connection. Jikaberhasil maka akan muncul seperti pada gambar berikut :
Gambar 4 Koneksi berhasil
5. Klik ok.6. Selanjutnya pada ConnPenjualan, kita akan membuat sebuah Command atau perintah
yang akan menampilkan table mana yang akan kita tampilkan pada Data Report.Caranya adalah dengan klik kanan pada ConnPenjualan Add Command.
7. Pada properties Command1 ubah name menjadi CmdPenjualan.8. Pada CmdPenjualan klik kanan Properties dan lakukan beberapa setting. Terlihat
seperti gambar berikut ini :
43
Gambar 5 Setting CmdPenjualan
9. Klik ok.10. Close Data Environment.
Setelah selesai melakukan koneksi maka kita tambahkan sebuah Data Report. Caranya adalahdengan klik kanan pada Project Add Data Report.
Lakukan beberapa setting pada data report tersebut :
1. Ubah nilai beberapa propertiesnya seperti tabel berikut :
Tabel 1 Data Report Properties
2. Untuk menampilkan field field table, kita tinggal melakukan drag & drop melaluiDataEnvironment1.
top related