100% menganggap dokumen ini bermanfaat (1 suara)
1K tayangan225 halaman

Visual BASIC 6 PDF

Modul Pemrograman merupakan bahan ajar yang digunakan sebagai pedoman mata kuliah pemrograman. Modul Pemrograman berisi mengenai Visual BASIC 6, Microsoft Office Acces dan MySQL.

Diunggah oleh

Muhammad Wali
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
1K tayangan225 halaman

Visual BASIC 6 PDF

Modul Pemrograman merupakan bahan ajar yang digunakan sebagai pedoman mata kuliah pemrograman. Modul Pemrograman berisi mengenai Visual BASIC 6, Microsoft Office Acces dan MySQL.

Diunggah oleh

Muhammad Wali
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 225

Modul Pemrograman

Microsoft Visual Basic 6


Selangkah
Menuju Master
VB

Mengenal Visual Basic


Berisi Puluhan Latihan VB
Tip dan Trick

Tingkat Menengah

MUHAMMAD WALI,ST

Microsoft

VISUAL BASIC

Tingkat Menengah

MODUL PEMROGRAMAN

MODUL

Selangkah Menuju Master VB

Microsoft

VISUAL BASIC

Tingkat Menengah

MODUL PEMROGRAMAN

Sanksi Pelanggaran Pasal 22 :


Unadng-Undang Nomor 19 Tahun 2002
Tantang hak Cipta
1. Barangsiapa dengan sengaja melanggar dan tanpa hak melakukan perbuatan sebagai-mana
dimaksud dalam Pasal 2 Ayat (1) atau Pasal 49 Ayat (1) dan Ayat (2) dipidana dengan pidana
penjara masing-masing paling singkat 1(satu) bulan dan/atau denda paling sedikit Rp.
1.000.000,00 (satu juta rupiah), atau pidana penjara paling lama 7 (tujuh) tahun dan/atau denda
paling banyak Rp.5.000.000.000,00 (lima milyar rupiah)
2. Barang siapa dengan sengaja menyiarkan, memamerkan, mengedarkan,atau menjual kepada
umum suatu ciptaan atau barang hasil pelanggaran hak cipta atau hal terkait sebagai dimaksud
pada Ayat (1) dipidana dengan pidana penjara paling lama lima(5) tahun dan/atau denda paling
banyak Rp.500.000.000,00 (lima ratus juta rupiah)

Microsoft

VISUAL BASIC
MODUL PEMROGRAMAN

LANGKAH MENUJU

MASTER VB

MUHAMMAD WALI, ST

Tingkat Menengah

Microsoft

VISUAL BASIC

Tingkat Menengah

MODUL PEMROGRAMAN

Selangkah Menuju Master VB

Muhammad Wali, ST
@ 2007, INDOPRINT | DIGITAL OFFSET

Editor :

Abdurrazak
Irfan Sofyan
Ziauddin

Dilarang keras menerjemahkan, menfotocopy, atau memperbanyak sebagian atau seluruh isi
buku ini tanpa izin penulis dan penerbit

Dicetak oleh Percetakan INDOPRINT


Isi diluar tanggung jawab percetakan

Microsoft

VISUAL BASIC

Tingkat Menengah

MODUL PEMROGRAMAN
DAFTAR ISI
KATA PENGANTAR .......................................................................................................
MATERI YANG AKAN DIBAHAS ...............................................................................

BAB I : SEJARAH MICROSOFT VISUAL BASIC


A. Sejarah Ms. Visual Basic ........................................................................... 9
B. Apa yang Bisa dilakukan Visual Basic ................................................... 13
BAB II : PENGENALAN VISUAL BASIC
A. Apa itu Visual Basic ................................................................................. 15
B. Students problem in speaking skill ........................................................... 16
C. Penjelasan Pada Propeti ............................................................................. 22
BAB III : VARIABEL
A. Variabel ....................................................................................................... 40
B. Data Type .................................................................................................... 40
C. Visual Basic Statment and Expresion ........................................................ 42
D. The analysis of interview ...........................................................................
BAB IV : ALUR PROSES
A. Alur Program ............................................................................................. 46
B. Perulangan ................................................................................................. 49
BAB V : MANIPULASI FORM
A. Kesempurnan Form ...................................................................................
B. Sub dan Function .......................................................................................
C. Komponen Lanjutan ....................................................................................
D. Operasi String .............................................................................................
E. MDI Form ...................................................................................................
BAB VI : LATIHAN - LATIHAN
BAB VII : MENGENAL DATABASE
BAB VIII : KONEKSI SQL DENGAN VISUAL BASIC
BAB IX : KONEKSI MS ACCES DENGAN VISUAL BASIC
BAB X : LATIHAN LATIHAN
DAFTAR PUSTAKA

52
54
56
59
62

Microsoft

VISUAL BASIC

Tingkat Menengah

MODUL PEMROGRAMAN
KATA PENGANTAR

Dengan mengucapkan syukur alhamdulillah penulis panjatkan kehadirat


Allah SWT, yang telah melimpahkan rahmat dan karunia-Nya sehingga
penulis dapat menyelesaikan Buku Pedoman ini dengan judul LANGKAH
MENUJU MASTER VB. Sebagai Pedoman untuk dapat menguasai Micosoft
Visual Basic 6.0 . Serta tak lupa pula Shalawat dan

salam penulis

sampaikan kepada junjungan Nabi Muhammad SAW, yang telah membawa


kita dari alam kebodohan menuju kealam yang penuh dengan ilmu
pengetahuan.
Buku ini disusun untuk keperluan kelangan mahasiswa AMIKI, sebagai
buku penuntun pratikum laboratorium pengganti catatan kuliah. Adapun
materi buku ini terdiri dari, pengenalan Microsoft Visual Basic. Diharapkan
kiranya dapat membantu mahasiswa/ mahasiswi dalam mengikuti mata
kuliah Pemrograman.
Akhirnya Penulis berharap laporan ini dapat bermanfaat dan penulis
mengucapkan terima kasih kepada semua pihak yang telah banyak
membantu dalam menyelesaikan Buku ini. Atas bantuannya penulis berdoa
kiranya Allah SWT akan membalas semua jasa dan budi baik yang telah
mereka berikan selama ini, (Amin).

Banda Aceh,

Juni 2006

Tim Penyusun

MODUL PEMROGRAMAN

Materi:
Materi yang akan dibahas:
Sejarah Ms. Visual Basic
Mengenal Menu dan Tool
Mengenal Fungsi
Type Data
Memasukkan oding Sederhana
Mengenal Database
Memanipulasi Form
Mengenal SQL
Mngenal Ms. Acces 2007
Membuat Aplikasi
dan Latihan-Latihan

Microsoft Visual Basic 6.0

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB I
SEJARAH MICROSOFT VISUAL BASIC

Visual

basic

adalah

pengembangan

dari

bahasa

komputer

BASIC

(Beginners All-purpose Symbolic Instruction Code). Bahasa BASIC diciptakan


oleh Professor John Kemeny dan Thomas Kurtz dari Kampus Darmouth pada
pertengahan tahun 1960-an (Deitel&Deitel, 1999). Bahasa program tersebut
tersusun mirip dengan bahasa Inggris yang biasa digunakan oleh para
programer

untuk

menulis

program-program

komputer

sederhana

yang

berfungsi sebagai pembelajaran bagi konsep dasar pemrograman komputer.


Sejak saat itu, banyak versi BASIC yang dikembangkan untuk digunakan pada
berbagai platform komputer. Beberapa versinya seperti Microsoft QBASIC,
QUICKBASIC, GWBASIC ,IBM BASICA, Apple BASIC dan lain-lain. Apple BASIC
dikembangkan oleh Steve Wozniak, mantan karyawan Hewlet-Packard dan
teman dekat Steve Jobs (pendiri Apple Inc.). Steve Jobs pernah bekerja
dengan Wozniak sebelumnya (mereka membuat game arcade Breakout untuk
Atari). Mereka mengumpulkan uang dan bersama-sama merakit PC, dan pada
tanggal 1 April 1976 mereka secara resmi mendirikan perusahaan komputer
Apple. Popularitas dan pemakaian BASIC yang luas dengan berbagai jenis
komputer turut berperan dalam mengembangkan dan memperbaiki bahasa itu
sendiri, dan akhirnya berujung pada lahirnya Visual Basic yang berbasis GUI
(Graphic User Interface) bersamaan dengan Microsoft Windows. Pemrograman
Visual Basic begitu mudah bagi pemula dan programer musiman karena ia
menghemat waktu pemrograman dengan tersedianya komponen-komponen
siap pakai. Hingga akhirnya Visual Basic juga telah berkembang menjadi
beberapa versi, sampai yang terbaru, yaitu Visual Basic 2008. Bagaimanapun
Microsoft Visual Basic 6.0

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
juga Visual Basic 6.0 tetap menjadi versi yang paling populer karena mudah
dalam membuat programnya dan ia tidak menghabiskan banyak memory
komputer.
Microsoft Visual Basic adalah bahasa pemrograman yang digunakan
untuk membuat palikasi Windows yang berbasis grafis (GUI Graphical User
Interface).
Visual Basic merupakan event-driven programming (pemrograman terkendali
kejadian) artinya program menunggu sampai adanya respon dari pemakai
berupa event/kejadian tertentu (tombol diklik, menu dipilih, dan lain-lain).
Ketika event terdeteksi, kode yang berhubungan dengan event (prosedur
event) akan dijalankan.
Pemrograman visual adalah suatu metode pembuatan program dimana
programmer

membuat

menggambar,

koneksi

menunjuk,

dan

di

antara

mengklik

objek-objek

pada

diagram

dengan
dan

ikon

cara
yang

berinteraksi dengan diagram alur. Jadi, programmer dapat menciptakan


program dengan cara mengklik pada ikon pemrograman.
Adapun contoh pemrograman visual yaitu visual basic, visual basic
adalah bahasa pemrograman berorientasi objek yang berbasis windows dari
Microsoft yang mengizinkan pengguna mengembangkan aplikasi windows dan
office dengan :
1. Membuat tombol perintah, kotak teks, jendela dan toolbar,
2. Selanjutnya akan di-link ke program BASIC yang kecil yang
melakukan tindakan tertentu.
Visual BASIC

merupakan

even-driven, artinya program

menunggu

pengguna melakukan sesuatu (even), seperti pada klik ikon dan kemudian
Microsoft Visual Basic 6.0

10

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
program

akan

menggunakan

merespons.
piranti

Misalnya

geser

dan

pada

pemulaan

turunkan(drag

pengguna

and

drop)

dapat
untuk

menengembangkan antar muka pengguna grafis yang dibuat secara otomatis


oleh

program

karena

penggunanya

muda,

visual

basic

memunkinkanprogrammer pemula untuk menciptakan aplikasi-aplikasi berbasis


windows yang menarik.
Sejak diluncurkannya pada tahun 1990, pendekatan visual BASIC
menjadi norma untuk bahasa pemrograman. Sekarang banyak lingkungan
visual untuk banyak bahasa pemrograman termasuk C, C++, Pascal, Java dan
lain-lainnya.

Visual

Development(RAD)

BASIC
karena

terkadang
memunkinkan

disebut

juga

programmer

Rapid

Application

membuat

aplikasi

prototype dengan cepat.


Berikut ini sejarah Visual Basic:

Pada 20 Mei 1991: Microsoft merilis Visual Basic versi 1.0 untuk Windows
di Windows World 1991, Atlanta, Amerika Serikat. Programmer dapat
membuat antar muka pengguna dengan mudah.

Pada 1 September 1992: Microsoft mengumumkan Microsoft Visual Basic


for MS-DOS dalam edisi Standard dan Professional. Seperti Visual Basic
untuk Windows, versi ini mengkombinasikan kemudahan pendisainan
secara grafis dengan kekuatan dan keunggulan dalam banyak hal di
pemrograman tradisional.

Pada 2 November 1992: Microsoft mengumumkan kemampuan dari


Visual Basic versi 2.0 untuk Windows pada edisi Professional dan
Standard.

Pada 14 Mei 1993: Microsoft mengumumkan Visual Basic versi 3.0 untuk
edisi Standard dan Professional.

Microsoft Visual Basic 6.0

11

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Pada 29 Juni 1993: Microsoft mengumumkan bahwa Microsoft Visual


Basic for Applications (VBA) akan diintegrasikan ke dalam Microsoft Excel
5.0 dan Microsoft Project 4.0.

Pada 14 November 1994: Visual Basic versi 4.0 untuk Windows


didemonstrasikan di Fall/COMDEX 94 di Las Vegas.

Pada 12 September 1995: Visual Basic versi 4.0 untuk MS-DOS,


Microsoft Windows NT, dan Windows 95 diumumkan.

Pada 7 Desember 1995: Microsoft mengumumkan Microsoft Visual Basic


Scripting Edition (VBScript), sebuah bahasa skrip Internet berbasiskan
pada Visual Basic.

Pada 3 Februari 1997: Microsoft membuka sistem pemrograman Visual


Basic versi 5.0, Edisi Professional tool versi terakhir yang paling
terkenal di dunia untuk membangun aplikasi yang tangguh (Rapid
Application Development RAD) tool.

Pada 10 Maret 1997: Versi terakhir yang dirilis dari Visual Basic 5.0, Edisi
Pembuatan Kontrol tersedia. Edisi Pembuatan Kontrol adalah cara mudah
untuk membuat ActiveX Controls bagi Internet, intranets, dan aplikasi
client/server.

Pada 15 Juni 1998: Microsoft mengumumkan Visual Basic versi 6.0, dan
dimasukkan ke dalam Microsoft Visual Studio versi 6.0.

Pada 2 September 1998: Visual Studio 6.0, solusi tool pengembangan


lengkap berskala perusahaan tersedia. Visual Studio 6.0 menyertakan
Visual Basic versi 6.0, Microsoft Visual C++, Microsoft Visual FoxPro,
Microsoft Visual InterDev Web, dan Microsoft Visual J++.

28 April 1999: Lingkungan pengembangan VBA versi 6.0 dan Software


Development Kit (SDK) VBA (SDK) versi 6.0 tersedia bagi vendor
perangkat lunak pihak ketiga melalui program lisensi VBA.

Microsoft Visual Basic 6.0

12

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Pada 15 Februari 2000: Steve Ballmer, presiden yang baru saja ditunjuk
dan CEO dari Microsoft Corporation, berbicara kepada lebih dari 2.000
pengembang dalam pidatonya pada Visual Basic Insiders Technical
Summit (VBITS), menyatakan visi Microsoft terhadap situs yang dapat
diprogram dan memaksa kembali komitmen perusahaan yang dalam
terhadap para pengembang Visual Basic.

Pada 11 Juli 2000: Microsoft menyampaikan Tool Platform .NET untuk


XML Web Services.

Pada 13 November 2000: Microsoft mengumumkan kemampuan Visual


Studio .NET versi Beta 1.

Pada 13 Februari 2002: Microsoft mengumumkan kemampuan dari Visual


Studio .NET versi akhir.

Ringkasan Versi:
1. Visual Basic 1.0: 1991
2. Visual Basic 2.0: 1992
3. Visual Basic 3.0: 1993
4. Visual Basic 4.0: 1996
5. Visual Basic 5.0: 1997
6. Visual Basic 6.0: 1998
7. Visual Basic 7.0: 2003
8. Visual Basic 8.0: 2005
9. Visual Basic 9.0: 2008
10.

Visual Basic 10.0: 2010

Apa yang bisa dilakukan dengan Visual Basic?


Setelah mengetahui konsep dasar Visual Basic, sekarang apa yang dapat
diperbuat oleh Visual Basic? Selama beberapa tahun belakangan, sejumlah opsi
Microsoft Visual Basic 6.0

13

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
yang tersedia untuk VB telah berkembang dengan pesat, dan sekarang Anda
dapat melakukan hampir semua yang bisa dilakukan oleh C++, dengan waktu
yang separuhnya. Lihatlah daftar dibawah ini, sebagai gambaran:

File Editor/Word Processing

Program Database

Aplikasi Internet

Web Browser

Manipulasi Data

File Management

Game

Spreadsheet
dll.

Selain itu, jika VB tidak dapat melakukan apa yang Anda inginkan,
ActiveX Control (biasa disingkat Control) sudah tersedia untuk Anda. ActiveX
Control adalah plug-in penting yang memungkinkan Anda menambah fungsifungsi lainnya pada Visual Basic, dan dapat dibeli dari pihak ketiga. Beberapa
diantaranya gratis, dari web VB dan situs-situs lainnya.

Microsoft Visual Basic 6.0

14

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB II
Pengenalan Visual Basic

Pada bab ini kita akan mencoba bagimana melakukan atau


membangun sebuah program aplikasi pada visual basic secara cepat. Kamu
akan mempelajari istilah baru, pendekatan dalam pembuatan sebuah
program dan kelebihan seputar visual basic.

Target
Mengetahui keuntungan visual basic dalm pembuatan sebuah program
aplikasi.
Memahami visual basic dalam segi konsep pemograman, kode dan
control.
Mempelajari secara mendasar design, implementasi, dan distribusi
sebuah program aplikasi visual basic.
Mengetahui menggunakan toolbox visual basic
Mengetahui memodifikasi object properties
Mengetahui design window
Mengetahui mengkompile program pada visual basic

1. Apa itu Visual Basic?

Visual Basic sebuah alat dimana kamu ingin mengembangkan program


aplikasi berbasis window(Graphic User Interface - GUI).

Visual Basic adalah event-driven, artinya program tidak akan melakukan


sesuatu sebelum ditempatkan satu atau beberapa event pada saat proses
nantinya (penjalanan program).

Microsoft Visual Basic 6.0

15

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Event?

Basic
Code

Basic
Code

Event processor

Basic
Code

Event
Procedures

Beberapa kelengkapan Visual Basic

Membangun Data Base dengan mudah


Internet
Native Code
Koleksi Control

2. Fasiltas Terbaru Visual Basic 6.0


Faster compiler
New ActiveX data control object
Allows database integration with wide variety of applications
New data report designer
New Package & Deployment Wizard
Additional internet capabilites

Microsoft Visual Basic 6.0

16

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
1

3. Struktur dari sebuah program aplikasi Visual Basic

Project (.VBP, .MAK)


Form 1 (.FRM)

Form 2 (.FRM)

Control

Form 3 (.FRM)

Control
Control
Control

Control
Control
Control

Control
Control

Module 1 (.BAS)

4. Application (Project) terdiri dari:

Forms - Windows dimana kita membangun interface


Controls Kelengkapan graphic yang dapat diletakkan pada form,
untuk memudahkan pemakai berinteraksi dengan program (seperti :
text boxes, labels, scroll bars, command buttons)

(Forms and

Controls adalah objects.)


Properties

Setiap

Control

dapat

diatur

sifat

ataupun

karakteristiknya melalui properti. Contoh properties names, captions,


size, color, position, and contents. Kita juga dapat merubah properti
saat perancangan dan program dijalankan.
Methods Procedure yang dapat dipanggil untuk sebuah object yang
special.
Event Procedures Kode untuk beberapa object. Kode ini berfungsi
dalam menghasilkan sebuah aksi pada program.
General Procedures kode yang dipanggil dengan aplikasi

Microsoft Visual Basic 6.0

17

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Modules kumpulan dari beberapa procedures, variable declarations,
and constantdalam sebuah aplikasi.

Disini kita fokuskan pada perancangan.


ada enam window yang muncul saat program visual basic muncul.

Window Utama yang terdiri dari menu bar, tittle bar dan juga tool
bar.

Dari

window

ini

semua

kegiatan

pembuatan

program

dilakukan. Menu-menu yang terdapat dalam window ini digunakan


selama perancangan program.

Code Editor
Run
Menu
editor
New
form
Add
projec

Pause
Save
project

Open
project

Form position
Stop

Object
Browser

Project
Form
Layout
Explorer
Propertie
s window

Form
dimensions
Toolbox

Window Kerja (Form) Window ini digunakan sebagai interface


dari perancangan sebuah program yang mana dapat diletakkan
control dan kode akan membuat program.

Microsoft Visual Basic 6.0

18

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Window Toolbox Digunakan untuk pemilihan control-control yang


akan digunakan dalam pembuatansebuah program.

Pointer
Label
Frame
Check Box
Combo Box
Horizontal Scroll
Timer
Directory List Box
Shapes
Image Box

Picture Box
Text Box
Command Button
Option Button
List Box
Vertical Scroll Bar
Drive List Box
File List Box
Lines
Data Tool

Object Linking

Microsoft Visual Basic 6.0

19

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Properties Window, Window ini digunakan untuk mengatur sifat
atau karakteristik dari masing-masing control yang digunakan
dalam perancangan sebuah program.

Form Layout Window

ini digunakan untuk mengatur letak

program yang akan dijalankan nantinya pada monitor.

Project

Window

digunakan

untuk

manajemen

proyek

yang

digunakan dalam pembuatan program. Pada window proyek terdapat

Microsoft Visual Basic 6.0

20

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
tiga tipe file yaitu form, modul bahasa basic dan visual basic control.
Form berextensionkan *.frm, modul bahasa basic dituliskan dengan
*.bas.

Ada dua cara untuk meletakkan control pada form, yaitu :


1. Klick ganda control pada tool box, maka secara default control terletak
pada form. Atur letak dan ukuran control pada form.

2. Klick control pada toolbox, kemudian bawa pointer mouse pada form.
Cursor berubah menjadi crosshair. Tempatkan crosshair pada form
dimana kamu ingin meletakkan control setelah itu geser dan lepaskan
klick mouse. Aturlah letak dan ukuran control pada form.

Untuk memindahkan control, click object tersebut lalu geser ke lokasi yang
baru dan lepas klick mouse.

Untuk merubah ukuran Control, Klick control tersebut dan handlesize akan
tampil maka anda bisa mengubah ukuran control tersebut.

Microsoft Visual Basic 6.0

21

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Click here
to move
object

Use sizing
handles to
resize

5. Penjelasan Properti pada Control


The Form Object

Form adalah tempat dimana kita merancang interface dari sebuah program.
Ini merupakan pusat dari pengembangan visual basic.

Form Properties:

Appearance Memilih 3-D or flat appearance.


BackColor

seting warna latar belakang.

BorderStyle setting border atau ukuran.


Caption

setting dari judul window.

Enabled

jikaTrue, dapat menerima respond dari mouse dan


keyboard; jika False, form tidak aktif.

Font

setting type huruf, jenis, dan ukuran.

ForeColor

setting warna dari huruf.

Picture

tempat dimana gambar diletakkan pada form.

Visible

jika False, menyembunyikan form.

Microsoft Visual Basic 6.0

22

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Events pada form :

Activate

apabila window sedang aktif.

Click

apbila dilakukan klick pada form.

DblClick

apabila dilakukan klick pada form

Load

apabila window sedang dibuka

Methods pada Form :

Cls

membersihakan semua graphic dan teks pada form.


Tetapi tidak setiap object.

Print

mencetak teks pada form.

Contoh :

frmExample.Cls ' clears the form


frmExample.Print "This will print on the form"

Command Buttons

Command Button Properties:

Appearance Memilih 3-D or flat appearance.


Cancel

jika bernilai true, makaakan membatalkan perintah


apabila menekan esc pada keyboard.

Caption

teks yang dituliskan pada Command Button.

Microsoft Visual Basic 6.0

23

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Default

A.

Font

Sets font type, style, size.

Command Button Events:

Click

Akan melakukan reaksi apabila Command Button di


Klick.

Label Boxes

label box adalah lokasi dimana kita dapat menampilkan teks. Teks tidak
dapat dapat diubah oleh pemakai.

Label Properties:

Alignment

Peletakan caption pada border.

Appearance Memilih 3-D or flat appearance.


AutoSize

Jika True, akan menyesuaikan dengan isi label. jika


False, label akan dibesarkan sesuai dengan isi label.

BorderStyle jenis dari border.

Caption

judul pada label.

Font

Sets font type, style, size.

Label Events:

Microsoft Visual Basic 6.0

24

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Click

akan terjadi rekasi apabila user mengklick label.

DblClick

akan terjadi rekasi apabila user mengklick ganda


label.

Text Boxes

text box i adalah lokasi dimana kita dapat menampilkan teks. Teks tidak
dapat dapat diubah oleh pemakai. , dan biasanya text box digunakan
sebagai media input dan output.

Text Box Properties:

Appearance Memilih 3-D or flat appearance.


BorderStyle Jenis dari border.
Font

Sets font type, style, size.

MaxLength

batas waktu penampilan teks.

MultiLine

penampilan teks lebih dari satu baris.

PasswordChar format passsword.

ScrollBars

Specifies type of displayed scroll bar(s).

SelLength

Length of selected text (run-time only).

SelStart

Starting position of selected text (run-time only).

SelText

Selected text (run-time only).

Tag

Stores a string expression.

Text

Menampilkan text.

Text Box Events:

Microsoft Visual Basic 6.0

25

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Change

setiap waktu text dapat berubah.

LostFocus

text tidak dalam keadaan terpilih.

KeyPress

ketikan menekan tombol pada keyboard.

Text Box Methods:

SetFocus

text box dalam keadaan terpilih.

Example

txtExample.SetFocus ' moves cursor to box named txtExample

Check Boxes

Check boxes Control yg digunakan sebagai alat memilih. Dan pemilihan


dapat dilakukan lebih dari pilihan.

Check Box Properties:

Caption

judul pada check box.

Font

Sets font type, style, size.

Value

nilai

unchecked

(0, vbUnchecked), checked

(1,

vbChecked), or grayed out (2, vbGrayed).

Check Box Events:

Microsoft Visual Basic 6.0

26

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Click

dapat melakukan reaksi apabila check diklick.

Option Buttons

Option buttons control yg digunakan sebagai alat pemilih sama seperti


check box, namun control ini tidak dapat melakukan pemilihan lebih dari
satu pilihan.

Option Button Properties:

Caption

judul pada option button.

Font

Sets font type, style, size.

Value

nilai jika terpilih (True) atau tidak (False).

Option Button Events:

Click

apabila diklick maka option dalam keadaan terpilih


atau true.

Frames

Frames adalah control yg digunakan untuk mengelompokkan beberapa


control.

Microsoft Visual Basic 6.0

27

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Frame Properties:
Caption

judul dari frame.

Font

Sets font type, style, size.

List Boxes

list box control yg digunakan sebagai alat untuk menampilkan daftar dari
beberapa pilihan yg dapat digulung..

List Box Properties:

Appearance Memilih 3-D or flat appearance.

List

daftar pilihan pada list box.

ListCount

jumlah items pada list.

ListIndex

nomor index pada listbox.

MultiSelect

penggunaan banyak pilihan.

Selected

pemilihan item.

Sorted

Pengurutan daftar list.

Text

text dari item yang terpilih.

List Box Events:

Click

Proses terjadi apabila diklick.

DblClick

Proses terjadi apabila diklick ganda.

Microsoft Visual Basic 6.0

28

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

List Box Methods:

AddItem

Penambahan item pada list.

Clear

Menghapus semua items pada list box.

RemoveItem menghapus item pada list boxsecara satu persatu.


Examples

lstExample.AddItem "menambahkan item" ' menambahkan text pada list


lstExample.Clear ' menghapus semua text pada list box
lstExample.RemoveItem 4 ' menghapus item yg ke 4 pada list box

Combo Boxes

combo box Persamaan dari list box. Namun pada combo dapat melakukan
pengisian langsung.

Combo Box Properties:

Appearance

Pemilihan 3-D or flat appearance.

List

Daftar items pada list box.

ListCount

Jumlah items in list.

ListIndex

Nomor Urut Pada control list = -1.

Sorted

Pengurutan item pada control.

Style

Model dari combo box form.


Style = 0, Dropdown combo;

Microsoft Visual Basic 6.0

29

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Style = 1, Simple combo;
Style = 2, Dropdown combo;
Text

Text dari item yang terpilih.

Combo Box Events:

Click

Event terjadi ketika item pada list di clicked.

DblClick

Event terjadi ketika item pada list di double-clicked.

Combo Box Methods:

AddItem

Penambahan item pada list.

Clear

Menghapus semua items pada list box.

RemoveItem Mengahapus

item pada list box dengan cara satu

persatu.

Examples
cboExample.AddItem "Penambahan item" ' Menambahkan text pada list
cboExample.Clear ' menghapus semua item pada combo box
cboExample.RemoveItem 4 ' mengahpus item yg ke 4 pada list box

Line Tool

line tool membuat garis dengan berbagai jenis dan warna.

Microsoft Visual Basic 6.0

30

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Line Tool Properties:

BorderColor Menentukan warna garis.


BorderStyle Menentukan bingkai garis. Garis dapat transparent,
solid, dashed, dotted, dan combinations.
BorderWidth Menentukan lebar garis.

Shape Tool

shape tool dapat membuat lingkaran, ovals, kubus, empat persegi panjang
dan banyak lainnya.

Shape Tool Properties:

BackColor

Menentukan warna latar belakang

BackStyle

Menentukan style warna latar belakang

BorderColor Menentukan warna dari bingkai.


BorderStyle Menentukan
transparent,

gaya
solid,

dari

bingkai
dashed,

dapat

berupa

dotted,

dan

combinations.
BorderWidth Menentukan lebar bingkai dari shape.
FillColor

Menentukan warna interior pada shape.

FillStyle

Menentukan style interior pattern pada shape.

Shape

Menentukan jenis shape yang digunakan.

Microsoft Visual Basic 6.0

31

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Horizontal and Vertical Scroll Bars

Horizontal dan vertical scroll bars berfungsi sebagai alat pengatur lebar
dari sebuah window.

kedua type pada scroll bars dapat digunakan dengan mengclick, atau
digeser.

End arrow
Bar area

Scroll box

Scroll Bar Properties:

LargeChange Menambah dan mengurangkan Value pada scroll


bar.
Max

Nilai maximum antara -32,768 to 32,767.

Min

Nilai minimum -32,768 to 32,767.

SmallChange Menambah dan mengurangkan Value pada scroll


bar ketika scroll bar di klick.
Value

Menunjukkan posisi pada scroll bar

Properties for horizontal scroll bar:

LargeChange

SmallChange

Max

Min
Microsoft Visual Basic 6.0

SmallChange

Value

LargeChange

32

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Properties for vertical scroll bar:
Min
SmallChange

LargeChange
Value

LargeChange

SmallChange
Max

Scroll Bar Events:

Change

Mengembalikan nilai setelah nilai property scroll bar


dirubah.

Scroll

Melakukan reaksi saat scroll bar digeser.

Picture Boxes

Picture box control yang berfungsi untuk menampilkan gambar dalam


format ico, bmp, jpg dan jpeg.

Microsoft Visual Basic 6.0

33

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Picture Box Properties:


AutoSize

Jika

True,

akan

menyesuaikan

dengan

ukuran

gambar yang akan di tampilkan.


Font

Mengatur jenis tulisan dan format tulisan.

Picture

Mengatur

format

dari

file

gambar

yang

akan

ditampilkan.

Picture Box Events:

Click

Berproses ketika gambar di klik.

DblClick

Berproses ketika gambar di double klik.

Picture Box Methods:

Cls

menghapus gambar.

Print

mencetak gambar.

Examples

picExample.Cls ' menghapus picExample


picExample.Print "a picture box" ' mencetak gambar pada picture box

Picture Box LoadPicture Procedure:

Sebuah fungsi yang berguna ketika menggunakan picture boxes adalah


LoadPicture procedure. Ini digunakan untuk mengatur Picture property
pada picture box saat berjalan.

Microsoft Visual Basic 6.0

34

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Example

picExample.Picture = LoadPicture("c:\pix\sample.bmp")

Image Boxes

image box adalah control yang berfungsi sama dengan pictrure namun
lebih luas penggunaannya.

Image Box Properties:

Picture

Menentukan jenis file gambar pada image box.

Stretch

Jika False, image box menyesuaikan ukuran dengan


gambar.

Jika True, gambar menyesuaikan dengan

area image box.

Image Box Events:

Click

Berproses ketika gambar di klik..

DblClick

Berproses ketika gambar di double klik.

Drive List Box

Microsoft Visual Basic 6.0

35

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

drive list box control yang digunakan untuk menampilkan drive yang
digunakan pada komputer saat program berjalan.

Drive List Box Properties:

Drive

Isi dari drive yang digunakan.

Drive List Box Events:

Change

Berproses ketika drive yang dipakai diubah.

Directory List Box

directory list box control yang menampilkan direktori yang dipakai dalam
program saat program berjalan.

Directory List Box Properties:

Path

Isi atau bagian dari direktori.

Directory List Box Events:

Change

Berproses saat direktori yang terpilih berubah.

Microsoft Visual Basic 6.0

36

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
File List Box

file list box control yang menampilkan file dari drive dan direktori yang ada
saat program berjalan.

File List Box Properties:

FileName

Berisikan dari file yang dapat dipilih .

Path

Berisikan direktori yang dapat dipilih.

Pattern

Berisikan tipe file yang dapat ditampilkan.

File List Box Events:

DblClick

Berproses saat file di klik ganda.

PathChange Berproses saat direktori penyimpan file berubah.

6. Langkah Dalam Pembuatan Program Aplikasi

Ada tiga langkah dalam pembuatan program aplikasi pada visual basic:

1. Merancang interface
2. Setting properties control
3. Meletakkan kode pada control

Microsoft Visual Basic 6.0

37

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
7. Merancang interface dan Setting Properties control

Ada 3 mode operasi visual basic.

Design mode untuk membangun aplikasi


Run mode untuk menjalankan aplikasi
Break mode untuk menghentikan sementara apalikasi dan
mendebug.

8. Membuat Menu
Menu yang dirancang dari visual basic ditampilkan seperti menu-menu
aplikasi windows lainnya. Menu diletakakkan pada suatu palang yang disebut
dengan palang menu (menu bar). Pada palang menu ini diletakkan judul dari
menu, untuk mengelompokkan menu atas item-item yang sesuai dengan judul
menu tersebut. Item-item menu tersebut dapat diakses melalui keyboard dan
mouse.
Menu dibuat dengan menggunakan menu editor, yang terletak pada baris

toolbar program visual basic.

Microsoft Visual Basic 6.0

38

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Caption untuk menuliskan string atau teks yang akan ditempatkan pada
menu.

Name untuk memberi nama pada menu

Index untuk memberikan urutan pada menu

Checked untuk memberikan tanda check pada sub menu

Enable untuk mengaktifkan menu

Visible untuk menampilkan menu

Shortcut untuk membuat tombol percepat

Tanda Panah untuk mengatur posisi menu

Next untuk membuat menu baru

Insert untuk menyisipkan menu

Delate untuk menghapus menu terpilih

Microsoft Visual Basic 6.0

39

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB III
Type dalam Visual Basic

1. Variables
Variabel adalah lokasi penyimpanan sementara untuk data dalam program
anda. Anda bisa menggunakan satu atau banyak variabel pada kode program,
dan variabel dapat mengandung kata-kata, angka, tanggal atau properti.
Variabel sangat berguna karena dengan variabel anda bisa menggunakan nama
yang singkat dan mudah diingat untuk setiap data yang ingin anda gunakan.
Penamaan variabel harusnya mengikuti peraturan pemberian nama variabel
yaitu :

1. Harus diawali dengan huruf, setelah itu terserah boleh diikuti dengan
angka. Contoh B007
2. Jangan terlalu panjang atau singkat, minimal 255 karakter
3. Jangan kembar.

2. Visual Basic Data Types

Data Type

Suffix

Boolean

None

Integer

Long (Integer)

&

Single (Floating)

Double (Floating)

Currency

Microsoft Visual Basic 6.0

40

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Date

None

Object

None

String

Variant

None

3. Variable Declaration
Ada tiga cara mendeklarasikan variabel :
1. Default/Variant
2. Implicit
3. Explicit

Deklarasi default atau variant ini bisa dikatakan bebas karena tidak terikat
akan satu type data :
sebagai contoh : Dim Data

Deklarasi implisit sering juga disebut deklarasi yang konvensional, karena


dalam medeklarasikan hanya menggunkan symbol type data.
Sebagai contoh :

TextValue$ = "This is a string" (type data String)


Amount% = 300 (type data integer)

Deklarasi Eksplisit, mendeklarasikan dengan type data yang lengkap.


Seperti contoh :
Dim MyInt as Integer
Dim MyDouble as Double
Dim MyString, YourString as String

Microsoft Visual Basic 6.0

41

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Pelajaran yang lewat, kita menjumpai bahwa ada 3 tahap pembuatan
program aplikasi visual basic :

1. Merancang interface
2. Setting Properti
3. Pembuatan Kode

Pada kesempatan ini, kita akan membahas mengenai tahap yang ketiga yaitu,
tahap pembuatan kode.

1. Visual Basic Statements and Expressions


Simple statement adalah assignment statement.

Ini

dilengkapi dengan

nama variabel, dan diikuti assignment operator (=), berikut contoh dari
beberapa expression.

Examples:

StartTime = Now
Explorer.Caption = "Captain Spaulding"
BitCount = ByteCount * 8
Energy = Mass * LIGHTSPEED ^ 2
NetWorth = Assets - Liabilities

Pernyataan biasanya dilakukan perbaris, namun dapat juga dilakukan


stacked dengan menggunakan colon (:) menggabungkan nya. Contoh :

StartTime = Now : EndTime = StartTime + 10

Microsoft Visual Basic 6.0

42

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Jika

pernyataan

terlalu

panjang,

maka

dapat

disambung

dengan

menggunakan continuation character (_). Contoh :

Months = Log(Final * IntRate / Deposit + 1) _


/ Log(1 + IntRate)

Pernyataan agar tidak dieksekusi menggunakan perintah

Rem atau

penggunaan tanda ('). For example:

Rem This is a remark


' This is also a remark
x = 2 * y ' another way to write a remark or comment

2. Visual Basic Operators

Operator Arithmatic :

Operator

Operation

Pangkat

*/

Perkalian dan Pembagian

Pembagian integer
Mod

+-

Sisa bagi
Penambahan dan Pengurangan

Untuk concatentate dua kalimat, gunakan symbol & atau symbol + :

lblTime.Caption = "The current time is" & Format(Now, hh:mm)

Microsoft Visual Basic 6.0

43

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtSample.Text = "Hook this + to this

Ada enam operator comparison pada Visual Basic:

Operator Comparison
>

Lebih besar daripada

<

Keci dari pada

>=

Lebih besar daripada atau sama dengan

<=

Keci dari pada atau sama dengan

Sama dengan

<>

Tidak sama dengan

Operator comparison juga dapat berupa nilai (True atau False).


Operators logical

Operator

Operation

Not

Logical not

And

Logical and

Or

Logical or

3. Fungsi Pada Visual Basic

Function

Tujuan

Abs

Mengembalikan nilai mutlak

Atn

Mengembalikan arctangen dalamradian dari n

Microsoft Visual Basic 6.0

44

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Cos

Mengembalikan kosinus dari sudut n.

Rnd

Menghasilkan angka acak

Sin

Mengembalikan nilai sinus

Sqr

Mengembalikan akar kuadrat dari n

Str

Mengubah nilai numerik menjadi string

Tan

Mengembalikan tangen dari sudut n.

Val

Mengubah nilai string menjadi nilai angka

Exp

Mengembalikan Konstanta e pangkat n

Microsoft Visual Basic 6.0

45

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB IV
Alur Proses Visual Basic

1. Alur Program
Program

adalah

proses

yang

sambung

menyambung.

Untuk

mencapai tujuan program harus melalui tahap-tahap tertentu, sehingga


diperlukan alur program yang jelas dan efisien. VB6 mengenal beberapa tipe
alur seperti percabangan, perulangan ataupun pelompatan. Visual basic
mempunyai beberapa sarana, antara lain Goto, If, Then, Else, while dan
sebagainya.

Pernyataan singkat If/Then :

If Balance - Check < 0 Then Print "Lagi belajar"

Disini, jika dan hanya jika Balance - Check lebih kecil dari nol, pernyataan
kamu tumpur akan tercetak.

Pernyataan If/Then/End If:

If Balance - Check < 0 Then


Print "Lagi Belajar"
Print "Jangan Pusing"
End If

Microsoft Visual Basic 6.0

46

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Pada kasus ini, jika Balance - Check lebih kecil dari nol, dua baris kalimat
akan tercetak.
Pernyataan, If/Then/Else/End If :

If Balance - Check < 0 Then


Print "Kamu Tumpur"
Print "Cari modal lagi donk"
Else
Balance = Balance - Check
End If

Disini, dua kalimat akan tercetak jika (Balance - Check < 0), tapi, jika tidak
(Else), Balance baru akan terhitung.

atau, kita dapat menambahkan pernyataan ElseIf:

If Balance - Check < 0 Then


Print " Kamu Tumpur "
Print " Cari modal lagi donk "
ElseIf Balance - Check = 0 Then
Print "hayo hati-hati"
Balance = 0
Else
Balance = Balance - Check
End If

Pada condisi pernyataan If/Then/Else, dapat juga digunakan select case

Kita menulis sebuah kondisi dengan pernyataan if :


If Age = 5 Then

Microsoft Visual Basic 6.0

47

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Category = "Balita"
ElseIf Age >= 13 and Age <= 19 Then
Category = "Remaja"
ElseIf (Age >= 20 and Age <= 35) Or Age = 50 Or (Age >= 60 and
Age <= 65) Then
Category = "Dewasa"
ElseIf Age > 65 Then
Category = "Jompo"
Else
Category = " Siapa aja mungkin "
End If

Kondisi diatas dengan menggunakan select case :

Select Case Age


Case 5
Category = "Balita"
Case 13 To 19
Category = "Remaja"
Case 20 To 35, 50, 60 To 65
Category = "Dewasa"
Case Is > 65
Category = "Jompo"
Case Else
Category = "Siapa aja mungkin"
End Select

Microsoft Visual Basic 6.0

48

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Contoh GoTo:

Line10:
.
.
GoTo Line10

Ketika kode mencari pernyataan GoTo, kontrol program akan mengarahkan


ke Line10.

2. Perulangan Visual Basic

perulangan dilakukan dengan format Do/Loop.


untuk operasi yang berulang kali.

Perulangan

dilakukan

Perulangan dilakukan jika kondisi awal

atau akhir telah ditemukan.

ContohDo While/Loop :

Counter = 1
Do While Counter <= 1000
Debug.Print Counter
Counter = Counter + 1
Loop

Perulangan akan dilakukan sebanyak counter lebih kecil atau sama dengan
1000.

Microsoft Visual Basic 6.0

49

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
ContohDo Until/Loop :

Counter = 1
Do Until Counter >

1000

Debug.Print Counter
Counter = Counter + 1
Loop

ContohDo/Loop While :

Sum = 1
Do
Debug.Print Sum
Sum = Sum + 3
Loop While Sum <= 50

Do/Loop Until Example:

Sum = 1
Do
Debug.Print Sum
Sum = Sum + 3
Loop Until Sum > 50

Mengeksekusi sekelompok pernyataan program selama beberapa kali dalam


satu even procedure dengan menggunakan For/Next.

Microsoft Visual Basic 6.0

50

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Contoh :

Sebagai contoh, loop For Next berikut ini akan membunyikan beep empat
kali berturut-turut dari speaker komputer :

For I = 1 to 4
Beep
Next I

Pernytaan Exit For berfungsi untuk keluar dari loop for next sebelum loop
selesai dieksekusi. Dengan cara ini, anda bisa merespon event tertentu yang
terjadi sebelum loop dijalankan sesuai jumlahnya yang telah ditentukan.
Sebagai contoh, pada loop for next berikut ini :

For

InpName

To 10
= InputBox (Enter your name or type Done to quit.)

If InpName = Done Then Exit For


Print InpName
Next

Loop meminta pemakai memasukkan 10 nama dan mencetaknya pada form,


kecuali jika kata Done diketikkan (Dalam hal ini program akan melompat ke
pernyataan dibawah pernyataan Next).

Microsoft Visual Basic 6.0

51

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB V
Manipulasi Form

Pengembangan Dan Kesempurnaan Pada Form

Pada bab ini anda akan mengkonsentrasikan pada antarmuka


kembali. Pada bab ini anda akan belajar cara menambahkan form pada
antar muka untuk menangani input, output, atau pesan khusus. Anda
juga akan belajar khusus mengenai pengembangan

properti pada

control-control yang digunakan dalam pembuatan sebuah program.

1. The Message Box (Kotak Pesan)

Salah satu fungsi visual basic yang sering digunakan adalah message box.
Message box menampilkan sebuah pesan, icon pilihan, sebuah tombol
pilihan. Pemakai dapat mengklick tombol tersebut untuk merespon.

Bentuk pernyataan dari message box secara umum :

MsgBox Message, Type, Title

dimana

Message

pesan yang akan ditampilkan

Type

Type dari pesan yang akan ditampilkan

Title

judul dari kotak pesan

Microsoft Visual Basic 6.0

52

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Kotak pesan juga dapat digunakan dengan sebuah variabel yang mempunyai
type data tertentu, seperti contoh dibawah ini :

Dim Response as Integer


Response = MsgBox(Message, Type, Title)

Type dari message box yang akan menampilkan tombol pilihan umum :

Value Meaning

Symbolic Constant

OK button only

vbOKOnly

OK/Cancel buttons

vbOKCancel

Abort/Retry/Ignore buttons vbAbortRetryIgnore

Yes/No/Cancel buttons vbYesNoCancel

Yes/No buttons

vbYesNo

Retry/Cancel buttons

vbRetryCancel

Type dari message box yang akan menampilkan tombol pilihan tertentu:

Value Meaning

Symbolic Constant

No icon

(None)

16

Critical icon

vbCritical

32

Question mark

vbQuestion

48

Exclamation point

vbExclamation

64

Information icon

vbInformation

Microsoft Visual Basic 6.0

53

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Contoh Message Box:

MsgBox This is an example of a message box, vbOKCancel +


vbInformation, Message Box Example

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.

Microsoft Visual Basic 6.0

54

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Rancanglah form di atas terlebih dahulu. Kita akan membuat sub untuk
inisialisasi nilai-nilai pada Listbox. Method dan property pada ListBox hampir
sama. Fungsi untuk menambah atau mengurangi item masih sama.

Kita dapat membuat Sub sendiri. Di sini kita beri nama Inisialisasi. Pada saat
Form Load kita dapat langsung memanggil Sub tersebut dan isi sub tersebut
langsung dieksekusi.

Pada program di atas Sub Inisialisasi kita tambahkan satu buah


parameter bertipe integer. Pada saat pemanggilan prosedur tersebut kita perlu
menyertakan sebuah integer seperti pada gambar. Selain Sub kita juga dapat
membuat Function. Perbedaannya adalah function memiliki suatu nilai yang

Microsoft Visual Basic 6.0

55

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
dikembalikan. Misalkan kita membuat fungsi bertipe Boolean yang akan
mengecek apakah sebuah angka ada di dalam item-item di dalam suatu
listbox.

Pada program di atas fungsi tersebut digunakan pada saat akan memasukkan
item pada listbox, dicek terlebih dahulu apakah angka sudah ada, angka hanya
akan ditambahkan ke listbox jika belum ada.
Buatlah fungsi untuk menghitung total angka yang terdapat pada kedua
listbox, tampilkanlah pada kedua label total di bawah masing-masing listbox.

Komponen Lanjutan
Pada bab ini kita akan mempelajari komponen-komponen lanjutan dalam Visual
mBasic 6.0. Kita akan membahas Check, Option, Frame, dan InputBox.

Microsoft Visual Basic 6.0

56

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Pada program di atas user dipersilahkan untuk mengisi namanya, jenis


kelaminnya laki-laki atau perempuan, kemudian memilih jenis kamar yang
diinginkan, kemudian memilih fasilitas apa saja yang diinginkan. Tiap kamar
memiliki harga yang berbeda-beda. Untuk pilihan jenis kamar gunakan Option,
di sini user hanya dapat memilih salah satu saja. Sedangkan untuk fasilitas
dapat menggunakan Check, di mana user dapat tidak memilih dan bebas untuk
memilih yang mana saja.
Kita asumsikan harga kamar adalah sebagai berikut :

Kemudian tampilkan harga total pembayarannya. Dan minta input pembayaran


dengan menggunakan inputbox. Validasilah agar pembayaran mencukupi total
pembayaran jika terdapat uang kembali tampilkan jumlah uang kembaliannya.
Microsoft Visual Basic 6.0

57

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Dan ucapkan terima kasih. Setelah itu resetlah kembali form ke keadaan
semula sebelum diisi.

Microsoft Visual Basic 6.0

58

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Operasi String dan Animasi


Dalam bab ini akan mempelajari tentang Operasi String yang ada dan
menggabungkannya dalam aplikasi. Berikut ini dilampirkan fungsi-fungsi string
dalam Visual Basic 6.0.

Fungsi-Fungsi String
Right,Mid,Left
Ketiga perintah ini berguna untuk mengambil suatu string dari dalam suatu
string.

Right
Mengambil sejumlah string dari kanan dengan sintaks Right(String,Panjangnya)
Contoh : Right(ABCDE,3) Hasilnya adalah CDE

Mid
Mengambil sejumlah string yang berada di tengah-tengah dengan sintaks
Mid(String,Start,Panjangnya)
Contoh : Mid(ABCDE,2,3) Hasilnya adalah BCD

Left
Mengambil sejumlah string dari kiri dengan sintaks Left(string,Panjangnya)
Contoh : Left(ABCD,3) Hasilnya adalah ABC

Format Digunakan untuk merubah format / bentuk dari suatu string, contoh
Untuk menggabungkan 2 atau lebih string, kita dapat menggunakan tanda & .
Contoh.
A=visual
Microsoft Visual Basic 6.0

59

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
B=Basic
C= A + B + mudah

Pada contoh di atas, nilai c akan berisi string visual Basic mudah. Kita coba
membuat aplikasi berikut ini. Kita akan membuat jam digital.

Untuk membuat jamnya terus bergerak kita gunakan timer

Buatlah timer dan set nilai pada property sebagai berikut.

Microsoft Visual Basic 6.0

60

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Timer akan secara terus menerus menjalankan suatu event tertentu yaitu
timer. Caranya clicklah dua kali pada timer.

Sub Timer1_Timer akan dijalankan pada saat timer1 enablednya true dan
dengan jeda esuai dengan intervalnya. Coding pada Timer1_timer akan
dijalankan terus menerus tanpa henti. Di sini kita masukkan coding untuk
menampilkan jam.

Objek Now adalah objek yang menunjukkan nilai tanggal/jam saat ini. Sub
Timer2_Timer melakukan prosedur yang lain, yaitu prosedur untuk membuat
tulisan judul JAM DIGITAL bergerak / rotasi. Disini menggunakan fungsifungsi string yang ada. (lihat tabel fungsi string di atas).

Microsoft Visual Basic 6.0

61

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

MDI Form
Dalam bab ini akan mempelajarin konsep MDI ( Multiple Document Interface )
dalam aplikasi. Kita akan mulai bekerja dengan lebih dari satu form. Untuk
membuat MDI Form kita harus tambahkan dengan klik pada menu Project >
Add MDI Form.

Setelah di-add maka pada akan muncul kotak dialog seperti di bawah ini. Anda
langsung klik Open saja.

Microsoft Visual Basic 6.0

62

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Pada Project Explorer akan muncul dua buah form yaitu Form1 dan MDIForm1.
Ubahlah properties MDIChild dari Form1 menjadi true. Hal ini menandakan
Form1 adalah sebagai form anak dari MDIForm1. Settinglah pada Project
Properties agar form utamanya adalah MDIForm1.

Kliklah pada menu editor untuk membuat menu.

Microsoft Visual Basic 6.0

63

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Di sini kita dapat merancang struktur menu yang dinginkan, membuat short
cut untuk menu tersebut, dan sebagainya. Selain itu kita dapat menambahkan
status bar atau toolbar. Pilihlah menu Project > Components.

Checklah pada bagian Microsoft Windows Common Control 6.0 Kemudian


lanjutkanlah dengan penggunaan Toolbar dan StatusBar pada form.
Untuk menggunakan Toolbar bisa masuk ke properties custom.

Microsoft Visual Basic 6.0

64

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Kemudian anda dapat melakukan berbagai macam setting untuk pengaturan
toolbar di sana.

Anda dapat menambahkan button-button pada toolbar, menambahkan tulisan


pada button tersebut, tooltip dan sebagainya. Untuk menambahkan gambar
pada button-button pada toolbar anda harus menggunakan imagelist. Pada
properties custom anda dapat menambahkan gambar-gambar yang diinginkan

Microsoft Visual Basic 6.0

65

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Gambar-gambar tersebut selanjutnya dapat digunakan pada layar custom dari
toolbar. Anda tinggal memasukkan index gambar yang diinginkan. Demikian
pula dengan status bar, masuklah ke properties custom nya. Anda dapat
menambahkan beberapa panel, berikut dengan teks dan tooltipnya.

Microsoft Visual Basic 6.0

66

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB VI
LATIHAN - LATIHAN

LATIHAN 1 : Membuat Perhitungan


1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 3 TextBox, 3 Label dan 2 CommandButton

3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

Microsoft Visual Basic 6.0

67

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Sesuai dengan Layout berikut :

5. Masukan code untuk CommandButton Proses


txtBayar.Text = Val(txtHargaSatuan.Text) * Val(txtJumlah.Text)

Masukan code untuk CommandButton Keluar


Unload Me

7. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

68

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 2
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 3 TextBox, 3 Label dan 2 CommandButton

3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

Microsoft Visual Basic 6.0

69

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Sesuaikan dengan layout sebagai berikut ini :

5. Masukan code untuk CommandButton Proses


MsgBox "Nama anda " & txtNama.Text & " dengan alamat " & _
txtAlamat.Text & " Telp " & txtTelepon.Text

6. Masukan code untuk CommandButton Keluar


Unload Me

7. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

70

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 3
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 2 TextBox, 3 Label, 1 ComboBox dan 1 CommandButton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

4. Sesuai dengan Layout berikut :

5. Masukan code pada Form Load


cmbBulan.AddItem "Januari"
cmbBulan.AddItem "Februari"
cmbBulan.AddItem "Maret"
cmbBulan.AddItem "April"
cmbBulan.AddItem "Mei"
Microsoft Visual Basic 6.0

71

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
cmbBulan.AddItem "Juni"
cmbBulan.AddItem "Juli"
cmbBulan.AddItem "Agustus"
cmbBulan.AddItem "September"
cmbBulan.AddItem "Oktober"
cmbBulan.AddItem "November"
cmbBulan.AddItem "Desember"
cmbBulan.ListIndex = 0

6. Masukan code untuk ComboBox1 proses pilih bulan


Select Case cmbBulan.ListIndex
Case 0
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 1
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 2
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 3
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 4
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 5
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1

Microsoft Visual Basic 6.0

72

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Case 6
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 7
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 8
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 9
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 10
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
Case 11
txtNamaBulan.Text = cmbBulan.Text
txtBulan.Text = cmbBulan.ListIndex + 1
End Select

7. Masukan code untuk CommandButton Keluar


Unload Me

8. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

73

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

LATIHAN 4
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 2 Frame, 2 OptionButton, 2 CheckBox dan 3 CommandButton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

Microsoft Visual Basic 6.0

74

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Sesuai dengan Layout berikut :

5. Masukan code untuk CommandButton Proses Option


Dim pesan As String
If Option1.Value = True Then
pesan = "Pria adalah makhuk hidup" & vbCrLf & _
"Pria senang kepada wanita" & vbCrLf & _
"Pria adalah teman wanita" & vbCrLf & _
"Pria Punya Selera"
Else
pesan = "Wanita adalah makhuk hidup" & vbCrLf & _
"Wanita senang kepada pria" & vbCrLf & _
"Wanita adalah teman pria" & vbCrLf & _
"Wanita JInak-Jinak Merpati"
End If
MsgBox pesan

6. Masukan code untuk CommandButton Proses Check


Dim pesan As String

Microsoft Visual Basic 6.0

75

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Dim pesan2 As String
If Check1.Value = 1 Then
pesan = "Mobil merupakan kendaraan beroda empat" & vbCrLf
End If
If Check2.Value = 1 Then
pesan2 = "Motor merupakan kendaraan beroda dua" & vbCrLf
End If
MsgBox pesan & pesan2

7. Masukan code untuk CommandButton Keluar


Unload Me

8. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

76

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

LATIHAN 5
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Pilih Main Menu | Project | Add Module
3. Masukan 1 TextBox, 1 Label, dan 2 CommandButton
4. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

Microsoft Visual Basic 6.0

77

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
5. Sesuai dengan Layout berikut :

6. Masukan code pada Module1


Public Sub addName(Team$, ReturnString$)
prompt$ = "Enter a " & Team$ & " Employe."
Nm$ = InputBox(prompt, "Input box")
WrapCharacter$ = Chr(13) + Chr(1)
ReturnString$ = Nm$ & WrapCharacter$
End Sub

7. Masukan code untuk CommandButton Tambah Nama


addName "sales", SalesPositions$
Text1.Text = Text1.Text & SalesPositions$

8. Masukan code untuk CommandButton Keluar


Unload Me

9. Tekan F5 untuk menjalankan program (Running)


Microsoft Visual Basic 6.0

78

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 6
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Pilih Main Menu | Project | Add Module
3. Masukan 2 TextBox, 2 Label, dan 2 CommandButton
4. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

5. Sesuai dengan Layout berikut :

6. Masukan code pada Module1


Public Function Perkalian(nilai1 As Integer, nilai2 As Integer) As
Integer
Dim hasil As Integer
hasil = nilai1 * nilai2
Perkalian = hasil
End Function

Microsoft Visual Basic 6.0

79

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
7. Masukan code untuk CommandButton Perkalian
Dim a As Integer
Dim b As Integer
a = Val(Text1.Text)
b = Val(Text2.Text)
MsgBox Perkalian(a, b)

8. Masukan code untuk CommandButton Keluar


Unload Me

9. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

80

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 7
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 1 TextBox, 1 Label, 1 ListBox dan 2 CommandButton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :

4. Sesuai dengan Layout berikut :

5. Masukan code untuk CommandButton Input


Dim larik(6) As String
Dim i As Integer
Dim data As Integer
data = CInt(Text1.Text)
If data > 6 Then
MsgBox "Jumlah data tidak boleh lebih dari 6 data", vbInformation
Else
Microsoft Visual Basic 6.0

81

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If data < 0 Then
MsgBox "jumlah data tidak boleh kurang dari 0", vbInformation
Else
List1.Clear
For i = 0 To data - 1
prompt$ = "Enter data yang akan dimasukan ke dalam array"
nilai$ = InputBox(prompt$, "Array Dimensi Satu")
larik(i) = nilai$
List1.AddItem larik(i), i
Next i
End If
End If

6. Masukan code untuk CommandButton Keluar


Unload Me

7. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

82

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 8 : MEMBUAT FORM MENJADI TRANSPARAN
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 1 Slide Bar, 1 CheckBox, dan 1 Buah Command Botton
3. Untuk Menambahkan Slider pada ToolBox tekan CTRL + T, dan checlist seperti
dibawah ini :

4. Gantilah properties masing-masing komponen seperti tertera dibawah ini :


Object
Form1
Slider1
Checkbox
Command1

Properties
Caption
Caption
Caption

Value
Muhammad Wali
Enabled
Exit

Microsoft Visual Basic 6.0

83

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
5. Sesuai dengan Layout berikut :

6. Masukan code pada Code Editor


Private Declare Function SetLayeredWindowAttributes Lib "user32"
(ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte,
ByVal dwFlags As Long) As Long
Private Declare Function UpdateLayeredWindow Lib "user32" (ByVal
hwnd As Long, ByVal hdcDst As Long, pptDst As Any, psize As Any,
ByVal hDCSrc As Long, pptSrc As Any, crKey As Long, ByVal pblend As
Long, ByVal dwFlags As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias
"GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias
"SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal
dwNewLong As Long) As Long
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_COLORKEY = &H1
Private Const LWA_ALPHA = &H2
Private Const ULW_COLORKEY = &H1
Private Const ULW_ALPHA = &H2
Private Const ULW_OPAQUE = &H4

Microsoft Visual Basic 6.0

84

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Private Const WS_EX_LAYERED = &H80000

Public Function isTransparent(ByVal hwnd As Long) As Boolean


On Error Resume Next
Dim Msg As Long

Msg = GetWindowLong(hwnd, GWL_EXSTYLE)


If (Msg And WS_EX_LAYERED) = WS_EX_LAYERED Then
isTransparent = True
Else
isTransparent = False
End If
If Err Then
isTransparent = False
End If
End Function

Public Function MakeTransparent(ByVal hwnd As Long, Perc As


Integer) As Long
Dim Msg As Long
On Error Resume Next
If Perc < 0 Or Perc > 255 Then
MakeTransparent = 1
Else
Msg = GetWindowLong(hwnd, GWL_EXSTYLE)
Msg = Msg Or WS_EX_LAYERED
SetWindowLong hwnd, GWL_EXSTYLE, Msg
SetLayeredWindowAttributes hwnd, 0, Perc, LWA_ALPHA
MakeTransparent = 0

Microsoft Visual Basic 6.0

85

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End If
If Err Then
MakeTransparent = 2
End If
End Function

Public Function MakeOpaque(ByVal hwnd As Long) As Long


Dim Msg As Long
On Error Resume Next
Msg = GetWindowLong(hwnd, GWL_EXSTYLE)
Msg = Msg And Not WS_EX_LAYERED
SetWindowLong hwnd, GWL_EXSTYLE, Msg
SetLayeredWindowAttributes hwnd, 0, 0, LWA_ALPHA
MakeOpaque = 0
If Err Then
MakeOpaque = 2
End If
End Function

7. Masukan code Form


Private Sub Form_Load()
Slider1.Enabled = False
Slider1.Value = 255
End Sub

8. Masukan code untuk Slider1


Private Sub Slider1_Scroll()
MakeTransparent Me.hwnd, Slider1.Value
End Sub

Microsoft Visual Basic 6.0

86

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
8. Masukan code untuk Check1
Private Sub Check1_Click()
If Check1.Value = vbChecked Then
Slider1.Enabled = True
MakeTransparent Me.hwnd, Slider1.Value
Else
Slider1.Enabled = False
MakeOpaque Me.hwnd
End If
End Sub

9. Masukan code untuk Command Botton Exit


Private Sub Command1_Click()
End
End Sub

10. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

87

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 9 : MEMBUAT FORM MENULIS
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 1 Common Dialog, 1 PictureBox, dan Buat Menu Editor
3. Untuk Menambahkan Slider pada ToolBox tekan CTRL + T, dan checlist seperti
dibawah ini :

3. Atur dan Buat Menu seperti dibawah ini :

Microsoft Visual Basic 6.0

88

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Picture Box

Properties
Caption
Back Color

Value
Teks Picture Box
Putih

5. Sesuai dengan Layout berikut :

6. Masukan code pada Code Editor


Dim CursorOn As Boolean, DrawObj As Object

7. Masukan code untuk PictureBox


Private Sub Picture1_KeyPress(KeyAscii As Integer)
Cursor.Enabled = False
If CursorOn Then SetCursor
If KeyAscii = 13 Then DrawObj.Print "" Else DrawObj.Print
Chr(KeyAscii);
Cursor.Enabled = True
End Sub
Microsoft Visual Basic 6.0

89

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer,
X As Single, Y As Single)
Cursor.Enabled = False
If CursorOn Then SetCursor
DrawObj.CurrentX = X
DrawObj.CurrentY = Y
Cursor.Enabled = True
If Button = 2 Then
PopupMenu mnuFile
End If
End Sub

Private Sub SetCursor()


DrawObj.DrawMode = 6
SaveCurrentY = DrawObj.CurrentY
SaveCurrentX = DrawObj.CurrentX
CursorHeight = DrawObj.TextHeight("I")
DrawObj.Line (SaveCurrentX, SaveCurrentY)-(SaveCurrentX,
SaveCurrentY + CursorHeight)
DrawObj.CurrentY = SaveCurrentY
DrawObj.CurrentX = SaveCurrentX
DrawObj.DrawMode = 13
CursorOn = Not CursorOn
End Sub

Private Sub Cursor_Timer()


SetCursor
End Sub

Microsoft Visual Basic 6.0

90

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
8. Masukan code pada Form
Private Sub Form_Load()
Set DrawObj = Picture1
Cursor.Enabled = True
End Sub

6. Masukan code pada Menu


Private Sub mnuFileSub_Click(Index As Integer)
Select Case Index
Case 0 ' Clear Text
DrawObj.Cls
Case 1 ' Change Font Properties
Cursor.Enabled = False
If CursorOn Then SetCursor
With CommonDialog1
.Flags = cdlCFBoth Or cdlCFEffects
.FontName = DrawObj.FontName
.FontItalic = DrawObj.FontItalic
.FontSize = DrawObj.FontSize
.FontStrikethru = DrawObj.FontStrikethru
.FontBold = DrawObj.FontBold
.FontUnderline = DrawObj.FontUnderline
.ShowFont
If Not .CancelError Then
DrawObj.FontName = .FontName
DrawObj.FontItalic = .FontItalic
DrawObj.FontSize = .FontSize
DrawObj.FontStrikethru = .FontStrikethru
DrawObj.FontBold = .FontBold

Microsoft Visual Basic 6.0

91

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
DrawObj.FontUnderline = .FontUnderline
DrawObj.ForeColor = .Color
End If
End With
Cursor.Enabled = True
Case 2 'Print
Cursor.Enabled = False
If CursorOn Then SetCursor
Printer.PaintPicture DrawObj.Image, 0, 0
Printer.EndDoc
Cursor.Enabled = True
Case 3
End
End Select
End Sub

7. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

92

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 10 : MEMBUAT SLIDE ANIMASI
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 3 Buah Command Botton, 1 Timer
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Commad1
Commad1
Commad2
Commad2
Commad3
Commad3
Timer

Properties
Caption
Caption
Name
Caption
Name
Caption
Name
Name

Value
Form Scroling
Start
cmdStart
Stop
cmdStop
Exit
cmdExit
TimerScroll

5. Sesuai dengan Layout berikut :

6. Masukan code untuk Command Botton Start


Private Sub cmdStart_Click()
TimerScroll.Enabled = True
End Sub

Microsoft Visual Basic 6.0

93

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
7. Masukan code untuk Command Botton Stop
Private Sub cmdStop_Click()
TimerScroll.Enabled = False
End Sub

8. Masukan code untuk Command Botton Exit


Private Sub cmdExit_Click()
DeleteGeneratedDC BackDC
Unload Me
Set frmSideScroll1 = Nothing
End Sub

9. Masukan code untuk Timer


Private Sub TimerScroll_Timer()
Static X As Long
Dim GlueWidth As Long, EndScroll As Long

If X + ScrollWidth > BackLength Then 'We ned to glue at the


beginnig again
'Calculate the remaining width
GlueWidth = X + ScrollWidth - BackLength
EndScroll = ScrollWidth - GlueWidth

'Blit the first part


BitBlt Me.hdc, 0, 0, EndScroll, BackHeight, BackDC, X, 0,
vbSrcCopy
'Now draw from the beginning again
BitBlt Me.hdc, EndScroll, 0, GlueWidth, BackHeight, BackDC, 0,
0, vbSrcCopy

Microsoft Visual Basic 6.0

94

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Else
BitBlt Me.hdc, 0, 0, ScrollWidth, BackHeight, BackDC, X, 0,
vbSrcCopy
End If
Me.Refresh
X = (X Mod BackLength) + 10
End Sub

10. Masukan code untuk Form


Private Sub Form_Load()

'Load the background


BackDC = GenerateDC(App.Path & "\side.bmp")

'dimension the form


Me.Move Me.Left, Me.Top, 250 * Screen.TwipsPerPixelX, Me.Height

End Sub

11. Masukan code pada code editor


Option Explicit
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long,
ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal
nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal
ySrc As Long, ByVal dwRop As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As
Long, ByVal hObject As Long) As Long
Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc
As Long) As Long

Microsoft Visual Basic 6.0

95

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long)
As Long
Private Declare Function LoadImage Lib "user32" Alias "LoadImageA"
(ByVal hInst As Long, ByVal lpsz As String, ByVal un1 As Long,
ByVal n1 As Long, ByVal n2 As Long, ByVal un2 As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As
Long) As Long

'**membuka gambar**
Const IMAGE_BITMAP As Long = 0
Const LR_LOADFROMFILE As Long = &H10
Const LR_CREATEDIBSECTION As Long = &H2000
'****************************************

Dim BackDC As Long

'Back ground dimensions


Const BackHeight As Long = 250
Const BackLength As Long = 750

'The width of the scrolling screen


Const ScrollWidth As Long = 250
Public Function GenerateDC(FileName As String) As Long
Dim DC As Long
Dim hBitmap As Long

'Create a Device Context, compatible with the screen


DC = CreateCompatibleDC(0)

Microsoft Visual Basic 6.0

96

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If DC < 1 Then
GenerateDC = 0
Exit Function
End If

'Membuka Gambar....
'Format gambar
hBitmap = LoadImage(0, FileName, IMAGE_BITMAP, 0, 0,
LR_LOADFROMFILE Or LR_CREATEDIBSECTION)

If hBitmap = 0 Then 'Failure in loading bitmap


DeleteDC DC
GenerateDC = 0
Exit Function
End If

SelectObject DC, hBitmap

GenerateDC = DC

DeleteObject hBitmap

End Function
Private Function DeleteGeneratedDC(DC As Long) As Long

If DC > 0 Then
DeleteGeneratedDC = DeleteDC(DC)
Else
DeleteGeneratedDC = 0

Microsoft Visual Basic 6.0

97

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End If

End Function

Private Sub TimerScroll_Timer()


Static X As Long
Dim GlueWidth As Long, EndScroll As Long

If X + ScrollWidth > BackLength Then 'We ned to glue at the


beginnig again

GlueWidth = X + ScrollWidth - BackLength


EndScroll = ScrollWidth - GlueWidth

BitBlt Me.hdc, 0, 0, EndScroll, BackHeight, BackDC, X, 0,


vbSrcCopy
'Now draw from the beginning again
BitBlt Me.hdc, EndScroll, 0, GlueWidth, BackHeight, BackDC, 0,
0, vbSrcCopy
Else

BitBlt Me.hdc, 0, 0, ScrollWidth, BackHeight, BackDC, X, 0,


vbSrcCopy

End If

Me.Refresh

Microsoft Visual Basic 6.0

98

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
X = (X Mod BackLength) + 10

End Sub

Note :
Siapkan 2 gambar format bmp contoh : side.bmp,1side.bmp

12. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

99

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 11 : MEMBUAT ANIMASI WARNA
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 3 Buah Command Botton, 1 Timer
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Form1
Commad1
Commad1
Timer
PictureBox
Picture

Properties
Name
Caption
Name
Caption
Name
Name
Name

Value
frmMoving
Animasi Warna
cmdStart
Start
TimerMove
picMask
picSprite

4. Sesuai dengan Layout berikut :

5. Masukan code untuk Command Botton Start


Private Sub cmdStart_Click()
TimerMove.Enabled = True
End Sub

Microsoft Visual Basic 6.0

100

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
6. Masukan code untuk Form
Private Sub Form_Load()
SpriteWidth = picSprite.ScaleWidth
SpriteHeight = picSprite.ScaleHeight
End Sub

7. Masukan code untuk Timer


Private Sub TimerMove_Timer()
Static X As Long, Y As Long
X = X + 1
Y = Y + 1
'Keep the ball of the egde
If X > Me.ScaleWidth Then
X = 0
End If

If Y > Me.ScaleHeight Then


Y = 0
End If

'Clears the form


'uncomment
'Me.Cls

BitBlt Me.hDC, X, Y, SpriteWidth, SpriteHeight, picMask.hDC, 0, 0,


vbSrcAnd
BitBlt Me.hDC, X, Y, SpriteWidth, SpriteHeight, picSprite.hDC, 0,
0, vbSrcPaint

Microsoft Visual Basic 6.0

101

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
'Force the form to update
'uncomment
'Me.Refresh
End Sub

7. Masukan code pada code editor


Option Explicit

Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long,


ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal
nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal
ySrc As Long, ByVal dwRop As Long) As Long
Dim X As Long, Y As Long

Dim SpriteWidth As Long


Dim SpriteHeight As Long

8. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

102

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 12 : MEMBUAT FORM LOGIN
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 3 Buah Command Botton, 1 Timer
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Label1
Labe2
Command1
Command2

Properties
Caption
Caption
Caption
Caption
Caption

Value
Menu awal
Nama Anda
Password
Ok
Batal

4. Sesuai dengan Layout berikut :

5. Masukan code untuk Command Botton OK


Private Sub Command1_Click()
If Text2.Text = "muhammad" Or Text2.Text = "wali" Then
Unload Me
Form2.Show
Else
MsgBox "Password Anda Salah! Silahkan Input Kembali"
Text2.Text = ""
Text2.SetFocus
End If
End Sub

Microsoft Visual Basic 6.0

103

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
6. Masukan code Untuk Command Botton Batal
Private Sub Command2_Click()
End
End Sub

7. Masukan code pada code editor


Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Command1_Click
End If
End Sub

8. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

104

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 13 : MEMBUAT Textbox Banyak
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 1 Buah Label, 1 Buah Text Box dan 1 Buah Command Botton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Label1
TextBox1
Command1

Properties
Caption
Caption
Text
Caption

Value
Buat TextBox Banyak
Label1
Text1
Commad1

4. Sesuai dengan Layout berikut :

5. Masukan code untuk Command1


Private Sub Command1_Click()
On Error GoTo Pesan

'Jika error, lompat ke Pesan

Selisih = Text1(0).Height * 1.33


For i% = 1 To 9

'Tambahkan 9 control lagi

Load Label1(i%) 'Load label ke memori

Microsoft Visual Basic 6.0

105

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Label1(i%).Caption = "Label" & i% + 1
Label1(i%).Top = Label1(i% - 1).Top + Selisih
Label1(i%).Visible = True
Load Text1(i%)

'Munculkan label ke form

'Load text ke memori

Text1(i%).Text = "Text" & i% + 1


Text1(i%).Top = Text1(i% - 1).Top + Selisih
Text1(i%).Visible = True

'Munculkan text ke form

Next i%

'Maju ke control berikutnya

Exit Sub

'Jika sudah selesai, keluar dari prosedur

Pesan:

'Jika terjadi kesalahan, karena sudah ada

MsgBox "Control sudah ada!", vbCritical, "Uuups"


End Sub

6. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

106

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 14 : MEMBUAT SELISIH WAKTU
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 17 Label, 2 TextBox, 1 Timer dan 3 Command Botton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object

Properties

Form1

Caption

Label1
Label2
Label3
Label4
Label5
Label6
Label7
Label8
Label9
Label10
Label10
Label11
Label11
Label12
Label12
Label13
Label13
Label14
Label14
Label15
Label15
Label16
Label16
Frame1

Caption
Caption
Caption
Caption
Caption
Caption
Caption
Caption
Caption
Name
Border Style
Name
Border Style
Name
Border Style
Name
Border Style
Name
Border Style
Name
Border Style
Name
Border Style
Caption

Commad1
Commad1
Commad2
Commad2
Commad3
Commad3
Timer1

Name
Caption
Name
Caption
Name
Caption
-

Value
Menghitung
Selisih
Waktu
(Muhammad Wali-2007)
Masukkan Tanggal Awal
Masukkan Tanggal Akhir
Selisih waktu dalam hari:
atau: selisih waktu dalam bulan:
atau: selisih waktu dalam tahun:
Selisih waktu dalam detik (total detik):
Jam
Menit
Detik
lblAgeDays
1 Fixed Single
lblAgeMonths
1 Fixed Single
lblAgeYears
1 Fixed Single
lblAgeSecs
1 Fixed Single
lblTimeHour
1 Fixed Single
lblTimeMinute
1 Fixed Single
lblTimeSecond
1 Fixed Single
Selisih dalam hitungan jam, menit, dan
detik
Cmdstart
Hitung
cmdPetunjuk
Petunjuk
cmdFinish
Selesai
-

Microsoft Visual Basic 6.0

107

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Sesuai dengan Layout berikut :

5. Masukan code Pada Code Editor


Option Explicit
Public gf_dtTime As Date

6. Masukan code Untuk Command Botton Hitung


Private Sub cmdStart_Click()
'Periksa apakah data yang dimasukkan berupa
'sebuah tanggal yang valid...
If IsDate(txtBDate.Text) Then
'Jika valid, convert ke teks tsb ke tipe data tanggal
'dan assign-kan ke variabel global Time
gf_dtTime = CDate(txtBDate.Text)
If CDate(txtBDate.Text) > CDate(txtFDate.Text) Then
MsgBox "Tanggal Awal tidak mungkin lebih" & vbCrLf & _
"besar dari Tanggal Akhir..." & vbCrLf & _
"Silahkan perbaiki!", vbCritical, "Tanggal Awal?"
txtBDate.SetFocus
Microsoft Visual Basic 6.0

108

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
SendKeys "{Home}+{End}"
Exit Sub
End If
Else
'Jika tidak valid, tampilkan pesan error
MsgBox "Anda harus memasukkan tanggal!", vbCritical, "Data
error"
'Kembalikan kursor ke textbox
txtBDate.SetFocus
'Posisikan kursor mulai dari awal textbox
txtBDate.SelStart = 0
'Sorot teks yang error tersebut
txtBDate.SelLength = Len(txtBDate.Text)
'Keluar dari prosedur ini
Exit Sub
End If
'Aktifkan control Timer jika benar...
Timer1.Enabled = True
End Sub

7. Masukan code Commad Botton Petunjuk


Private Sub cmdPetunjuk_Click()
MsgBox "Contoh penggunaan fungsi DateDiff" & vbCrLf & _
"untuk menghitung selisih antara" & vbCrLf & _
"dua buah tanggal yang ditentukan." & vbCrLf & _
"" & vbCrLf & _
"Jika kedua tanggal sama, maka selisih" & vbCrLf & _
"yang ada adalah selisih jam, menit, dan" & vbCrLf & _
"detik yang dihitung mulai pukul 00:00:00" & vbCrLf & _

Microsoft Visual Basic 6.0

109

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
"sampai dengan pukul saat ini." & vbCrLf & _
"" & vbCrLf & _
"Dibuat oleh Muhammad Wali (C) 2007" & vbCrLf & _
"amiki banda aceh" & vbCrLf & _
"", vbInformation, "Petunjuk"
End Sub

8. Masukan code untuk Commad Botton Selesai


Private Sub cmdFinish_Click()
End
End Sub

9. Masukan code untuk Timer1


Private Sub Timer1_Timer()
Dim lYourAgeInSecs As Long
Dim lYourAgeInDays As Long
Dim lYourAgeInMonths As Long
Dim lYourAgeInYears As Long
Dim h1 As Long
Dim m1 As Long
Dim s1 As Long
Dim tampung As String
Dim sisa As Long
Dim Durasi As Long

On Error Resume Next


'Hitung selisih tanggal dalam hitungan detik
lYourAgeInSecs = DateDiff("s", gf_dtTime, Now)

Microsoft Visual Basic 6.0

110

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
'Hitung seleish tanggal dalam hitungan hari
lYourAgeInDays = DateDiff("d", gf_dtTime, Now)

'Hitung selisih tanggal dalam hitungan bulan


lYourAgeInMonths = DateDiff("m", gf_dtTime, Now)

'Hitung selisih tanggal dalam hitungan tahun


lYourAgeInYears = DateDiff("yyyy", gf_dtTime, Now)

'Tampilkan ke layar hasilnya...


lblAgeSecs.Caption = Format(CStr(lYourAgeInSecs), "#,#")
lblAgeDays.Caption = Format(CStr(lYourAgeInDays), "#,#")
lblAgeMonths.Caption = Format(CStr(lYourAgeInMonths), "#,#")
lblAgeYears.Caption = Format(CStr(lYourAgeInYears), "#,#")
Durasi = lYourAgeInSecs
h1 = Durasi \ 3600

'pembagian bil bulat (jam)

sisa = Durasi Mod 3600

'sisa pembagian

m1 = sisa \ 60

'sisa jam dibagi 60 (menit)

s1 = sisa Mod 60

'sisa bagi menit (detik)

tampung = "" & h1 & ":" & m1 & ":" & s1 & ""
lblTimeHour.Caption = Format(h1, "#,#")
lblTimeMinute.Caption = m1
lblTimeSecond.Caption = s1
End Sub

10. Masukan code untuk TextBox1


Private Sub txtBDate_Change()
cmdStart.Default = True
End Sub

Microsoft Visual Basic 6.0

111

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
11. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

112

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 15 : MENAMPILKAN USER COMPUTER
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Masukan 6 Label, 5 Text Box, 1 ListBox dan 1 Buah Command Botton
3. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Label1
Label2
Label3
Label4
Label5
Label5
Commad1

Properties
Caption
Caption
Caption
Caption
Caption
Caption
Caption
Caption

Value
Menampilkan User Computer
Computer Name
User List
User Name
Full Name
Description
User Comment
&Show

4. Sesuai dengan Layout berikut :

Microsoft Visual Basic 6.0

113

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
5. Masukan code pada Code Editor
Private Type USER_INFO_10
usr10_name

As Long

usr10_comment

As Long

usr10_usr_comment

As Long

usr10_full_name

As Long

End Type

Private Type USER_INFO


name

As String

full_name

As String

comment

As String

usr_comment

As String

End Type

Private Const ERROR_SUCCESS As Long = 0&


Private Const MAX_COMPUTERNAME As Long = 15
Private Const MAX_USERNAME As Long = 256
Private Const FILTER_NORMAL_ACCOUNT

As Long = &H2

Private Declare Function NetUserGetInfo Lib "netapi32" _


(lpServer As Byte, _
username As Byte, _
ByVal level As Long, _
lpBuffer As Long) As Long

Private Declare Function NetUserEnum Lib "netapi32" _


(servername As Byte, _
ByVal level As Long, _

Microsoft Visual Basic 6.0

114

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
ByVal filter As Long, _
buff As Long, _
ByVal buffsize As Long, _
entriesread As Long, _
totalentries As Long, _
resumehandle As Long) As Long

Private Declare Function NetApiBufferFree Lib "netapi32" _


(ByVal Buffer As Long) As Long

Private Declare Function GetUserName Lib "advapi32" _


Alias "GetUserNameA" _
(ByVal lpBuffer As String, _
nSize As Long) As Long

Private Declare Function GetComputerName Lib "kernel32" _


Alias "GetComputerNameA" _
(ByVal lpBuffer As String, _
nSize As Long) As Long

Private Declare Sub CopyMemory Lib "kernel32" _


Alias "RtlMoveMemory" _
(xDest As Any, _
xSource As Any, _
ByVal nBytes As Long)

Private Declare Function lstrlenW Lib "kernel32" _


(ByVal lpString As Long) As Long

Microsoft Visual Basic 6.0

115

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Private Declare Function StrLen Lib "kernel32" _
Alias "lstrlenW" _
(ByVal lpString As Long) As Long

Private Function GetUserEnumInfo(bServername() As Byte)

Dim users() As Long


Dim buff As Long
Dim buffsize As Long
Dim entriesread As Long
Dim totalentries As Long
Dim cnt As Integer

buffsize = 255

If NetUserEnum(bServername(0), 0, _
FILTER_NORMAL_ACCOUNT, _
buff, buffsize, _
entriesread, _
totalentries, 0&) = ERROR_SUCCESS Then

ReDim users(0 To entriesread - 1) As Long


CopyMemory users(0), ByVal buff, entriesread * 4

For cnt = 0 To entriesread - 1


List1.AddItem GetPointerToByteStringW(users(cnt))
Next cnt

NetApiBufferFree buff

Microsoft Visual Basic 6.0

116

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Else
MsgBox "Error connection..., coba lagi ", 16
End If

End Function

Private Function GetComputersName() As String

'returns the name of the computer


Dim tmp As String

tmp = Space$(MAX_COMPUTERNAME + 1)

If GetComputerName(tmp, Len(tmp)) <> 0 Then


GetComputersName = TrimNull(tmp)
End If

End Function

Private Function TrimNull(item As String)

Dim pos As Integer

pos = InStr(item, Chr$(0))

If pos Then
TrimNull = Left$(item, pos - 1)
Else: TrimNull = item
End If

Microsoft Visual Basic 6.0

117

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Function
Private Function GetUserNetworkInfo(bServername() As Byte,
bUsername() As Byte) As USER_INFO

Dim usrapi As USER_INFO_10


Dim buff As Long

If NetUserGetInfo(bServername(0), bUsername(0), 10, buff) =


ERROR_SUCCESS Then
CopyMemory usrapi, ByVal buff, Len(usrapi)
GetUserNetworkInfo.name =
GetPointerToByteStringW(usrapi.usr10_name)
GetUserNetworkInfo.full_name =
GetPointerToByteStringW(usrapi.usr10_full_name)
GetUserNetworkInfo.comment =
GetPointerToByteStringW(usrapi.usr10_comment)
GetUserNetworkInfo.usr_comment =
GetPointerToByteStringW(usrapi.usr10_usr_comment)

NetApiBufferFree buff

End If

End Function

Private Function GetPointerToByteStringW(lpString As Long) As


String

Dim buff() As Byte

Microsoft Visual Basic 6.0

118

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Dim nSize As Long
If lpString Then
nSize = lstrlenW(lpString) * 2

If nSize Then
ReDim buff(0 To (nSize - 1)) As Byte
CopyMemory buff(0), ByVal lpString, nSize
GetPointerToByteStringW = buff
End If

End If
End Function

6. Masukan code Untuk Commad Botton SHOW


Private Sub Command1_Click()
Dim tmp As String
Dim bServername() As Byte
List1.Clear
tmp = Text1.Text
If Len(tmp) Then
If InStr(tmp, "\\") Then
bServername = tmp & Chr$(0)
Else: bServername = "\\" & tmp & Chr$(0)
End If

End If
Call GetUserEnumInfo(bServername())

End Sub

Microsoft Visual Basic 6.0

119

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
7. Masukan code pada Form
Private Sub Form_Load()
Dim tmp As String
Dim bServername() As Byte

tmp = GetComputersName()
Text1 = tmp
End Sub

8. Masukan code untuk List1


Private Sub List1_Click()
Dim usr As USER_INFO
Dim bUsername() As Byte
Dim bServername() As Byte
Dim tmp As String
If Len(Text1.Text) And (List1.ListIndex > -1) Then

bUsername = List1.List(List1.ListIndex) & Chr$(0)


tmp = Text1.Text
If Len(tmp) Then

If InStr(tmp, "\\") Then


bServername = tmp & Chr$(0)
Else: bServername = "\\" & tmp & Chr$(0)
End If
End If
usr = GetUserNetworkInfo(bServername(), bUsername())
Text2.Text = usr.name
Text3.Text = usr.full_name

Microsoft Visual Basic 6.0

120

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Text4.Text = usr.comment
Text5.Text = usr.usr_comment
End If
End Sub

9. Tekan F5 untuk menjalankan program (Running)

Microsoft Visual Basic 6.0

121

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB VII
Mengenal dan Membuat Database

A Pendahuluan
1.

Database
Database terdiri atas dua kata, yaitu data dan base. Data adalah
representasi fakta dunia nyata yang mewakili suatu objek seperti
manusia, barang, peristiwa, konsep, dan sebagainya, yang direkam
dalam

bentuk

angka,

huruf,

simbol,

teks,

gambar,

bunyi,

atau

kombinasinya. Base dapat diartikan sebagai markas, gudang, atau


tempat bersarang/berkumpul.
Database

dapat didefinisikan sebagai suatu himpunan kelompok

data yang saling berhubungan yang diorganisasi sedemikian rupa agar


kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
Prinsip

utama

database

adalah

pengaturan,

pemilahan,

pengelompokan, serta pengorganisasian data sesuai fungsi/jenisnya.


Tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan
kembali data.
Database Relasional. Dalam manajemen database ada manajemen
database relasional, yaitu pengaturan database berdasarkan relasi antar
tabel.
Cukup Banyak Aplikasi Pembuatan Database seperti : MySQL,
Oracle, Fire Bird, PostgreSQL, SQL 7, SQL Server dan Microsoft Acces.
Dalam Bab ini, saya hanya akan menjelaskan dan Membuat Database
dengan MySQL dan Microsoft Acces 2007. Yang nantinya akan dijadikan
Database untuk Latihan Visual Basic kita nanti.

Microsoft Visual Basic 6.0

122

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
B. Apa sih MySQL?

MySQL adalah DBMS (Database Management System)


Database bisa jadi apa saja dari sebuah daftar belanja sederhana
sampai galeri lukisan atau sejumlah besar informasi dalam jaringan
perusahaan. Untuk menambah, mengakses, dan memproses data
yang disimpan dalam database komputer, Anda butuh sebuah DBMS
seperti MySQL. Karena komputer sangat baik dalam menangani
sejumlah besar data, manajemen database memainkan peran sentral
dalam komputasi, sebagai alat yang berdiri sendiri, atau sebagai
bagian dari aplikasi yang lain.

MySQL adalah RDBMS (Relational Database Management System)


Sebuah database relasional menyimpan data dalam tabel-tabel yang
terpisah daripada menaruh semua data dalam satu tempat yang
besar. Hal ini menambah kecepatan dan fleksibilitas. Tabel-tabel
tersebut dihubungkan oleh relasi-relasi terdefinisi yang membuatnya
bisa menggabungkan data dari beberapa tabel yang diminta. SQL
(Structured Query Language) yang merupakan bagian dari MySQL
adalah

bahasa

standar

yang

paling

umum

digunakan

untuk

mengakses database.

MySQL adalah software open source.


Open

source

berarti

setiap

orang

boleh

menggunakan

dan

memodifikasi. Anda bisa men-download MySQL dari internet dan


menggunakannya

tanpa

harus

membayar.

Anda

pun

bisa

mempelajari source code dan mengubahnya sesuai kebutuhan.


MySQL menggunakan GPL (GNU Public License) untuk mendefinisikan
apa yang Anda boleh dan tidak boleh Anda lakukan dengan software
dalam situasi yang berbeda. Anda bisa membeli versi lisensi

Microsoft Visual Basic 6.0

123

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
komersilnya bila merapa tidak nyaman dengan GPL atau ingin
menyisipkan MySQL ke dalam aplikasi komersil.

Menurut Muhammad Wali dan Taufik Iqbal (2006) dalam bukunya


Pedoman SQL Complete MySQL adalah software yang berfungsi untuk
mengelola database secara relasional, istilahnya adalah RDBMS (Relational
Database Manajemen System)

Kenapa mengunakan MySQL

MySQL sangat cepat, reliabel, dan mudah digunakan. Anda dapat


melihat perbandingan performa MySQL dengan DBMS lain pada:
http://www.mysql.com/information/benchmarks.html

Ia juga memiliki banyak fasilitas praktis yang dikembangkan dalam


kerja sama yang amat dekat dengan user-user awalnya.

MySQL mulanya dikembangkan untuk menangani database yang


sangat besar lebih cepat dari solusi-solusi yang ada dan telah sukses
digunakan

dalam

lingkungan

produksi

yang

memiliki

banyak

permintaan untuk beberapa tahun.

Konektivitas, kecepatan dan keamanan membuat MySQL amat sesuai


untuk mengakses database pada internet.

MySQL memiliki banyak kontribusi software yang ada. Anda akan


menemukan bahwa bahasa pemrograman atau aplikasi favorit Anda
telah mendukung MySQL.

Instalasi MySQL
1.

Instalasi RPM
Disarankan untuk menginstal MySQL dengan menggunakan file RPM.
RPM MySQL (versi 3.23.43) dibangun pada sistem RedHat 6.2, namun

Microsoft Visual Basic 6.0

124

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
seharunya juga berjalan pada Linux versi lain yang mendukung rpm dan
menggunakan glibc.
Berikut adalah beberapa file RPM yang mungkin akan Anda gunakan:

MySQL-VERSION.i386.rpm, Server MySQL. Anda akan butuh ini


kecuali Anda ingin terhubung ke server MySQL yang berjalan di
komputer lain.

MySQL-client-VERSION.i386.rpm, Program standar client MySQL.


Anda harus mengistal ini.

MySQL-bench-VERSION.i386.rpm. Tes dan benchmark. Memerlukan


Perl dan RPM msql-mysql-modules.

MySQL-devel-VERSION.i386.rpm. Library dan file-file include yang


diperlukan bila Anda ingin mengkompile client MySQL lain, seperti
modul-modul Perl.

MySQL-VERSION.src.rpm. Ini memuat source code untuk semua


paket di atas. Ini bisa juga digunakan untuk membangun RPM untuk
arsitektur yang lain (misal, Alpha atau SPARC).

Untuk melihat semua file dalam paket RPM, jalankan:


shell> rpm -qpl MySQL-VERSION.i386.rpm

Unruk melakukan instalasi minimal standar:


shell>

rpm

-i

MySQL-VERSION.i386.rpm

MySQL-client-

VERSION.i386.rpm

Untuk menginstal hanya paket client:


shell> rpm -i MySQL-client-VERSION.i386.rpm

Microsoft Visual Basic 6.0

125

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
RPM menempatkan data di `/var/lib/mysql'. Ia juga membuat entry
yang diperlukan pada `/etc/rc.d/' untuk menjalankan server otomatis
saat boot. (Maksudnya, jika Anda telah melakukan instalasi sebelumnya,
Anda mungkin ingin membuat copy dari file startup MySQL yang terinstal
sebelumnya, sehingga jika Anda ingin membuat perubahan padanya,
Anda tidak kehilangan perubahannya).
Setelah menginstal file RPM, mysqld daemon seharusnya berjalan dan
Anda bisa mulai menggunalan MySQL.
2.

Instalasi source

Konfigurasi dan pengujian setelah instalasi


Setelah Anda menginstal MySQL, Anda perlu menginisialisasi tabeltabel grant, menjalankan server, dan memastikan server bekerja dengan
baik. Anda bisa mengatur agar server di-start dan stop otomatis ketika
Linux di-start dan shutdown.
Normalnya Anda menginstal tabel grant dan men-start server seperti ini
untuk instalasi

Perintah Dasar pada MySQL


MySQL merupakan sebuah DBMS (Database Management System) yang

bersifat multiuser dan multireading. SQL (Structured Query Languange) yang


merupakan bahasa standar yang digunakan untuk sistem manajemen database
relational.

Tipe Data
Setiap Data memiliki tipe data. Tipe data dibagi menjadi dua yaitu tipe
data standar dan tipe data perluasan. Beberapa tipe data standar diantaranya :

Microsoft Visual Basic 6.0

126

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
1. Char : untuk menyatakan deretan karakter (String)
2. Integer

: untuk menyatakan bilangan bulat

3. Numeric

: untuk menyatakan bilangan real

Dan beberapa tipe data perluasan diantaranya :

1. Varchar

: untuk menyatakan string yang panjangnya bervariasi

2. Boolean

: untuk menyatakan tipe logis (true atau false)

3. Money

: untuk menyatakan uang

4. Blob : untuk menyatakan data biner atau gambar


5. Serial : untuk menyatakan nilai yang urut

Statement MySQL
DDL (Data Definition Languange)

Membuat database, menggunakannya, membuat table, menentukan


index serta struktur penyimpanan tabel

CREATE DATABASE {nama database yang akan dibuat}.


Perintah ini digunakan untuk pada saat membuat database untuk
pertama kali

USE {nama database yang akan digunakan}.


Untuk menggunakan database yang telah dibuat

CREATE TABLE {nama tabel yang akan dibuat}.


Membuat tabel yang diperlukan database.

Microsoft Visual Basic 6.0

127

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
DML (Data Manipulation System)
Melakukan manipulasi dan pengambilan data berupa penyisipan
atau penambahan data baru, penghapusan data serta pengubahan data.

INSERT
Perintah

INSERT

INTO

namatabel

(field1,[field2,[...]])

VALUES

(nilai1[,nilai2,[....]);
-

UPDATE
Perintah

UPDATE namatabel SET field1=nilai1, field2=nilai2[...]

WHERE kondisi;
-

DELETE
Perintah

: DELETE FROM namatabel WHERE kondisi;

SELECT
Perintah

: SELECT * FROM namatabel;

(*) untuk memilih seluruh field bila hanya beberapa yang akan
digunakan sebutkan fieldnya. Penggunaan SELECT dengan berbagai
kondisi .

# Menggunakan operator IS NULL dan IS NOT NULL


Operator IS NULL digunakan untuk mencari nilai yang kosong
dalam suatu kolom, sedangkan IS NOT NULL digunakan untuk mencari
nilai yang tidak kosong.
Contoh :
SELECT * FROM tabel WHERE dataku IS NULL;

SELECT * FROM tabel WHERE dataku IS NOT NULL;

Microsoft Visual Basic 6.0

128

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
# Mengurutkan data dengan ORDER BY
Contoh :

SELECT * FROM tabel ORDER BY nama;

# Mengurutkan data secara Descending


Contoh :

SELECT * FROM tabel ORDER BY nama DESC

DCL (Data Control Languange)


DCL adalah perintah untuk melakukan pendefinisian pemakai yang
boleh mengakses database dengan berbagai macam previlage. DCL
terdiri atas sekelompok perintah SQL untuk memberikan hak untuk
mengakses database, mengalokasikan space, pendefinisan space dan
pengauditan penggunaan database. Biasanya hal ini tersedia pada
sistem manajemen database yang memiliki fasilitas keamanan denga
membatasi pemakai dan kewenangannya

Instalasi MySQL
1. Download installer MySQL dari situs resminya dan extract kedalam
sebuah folder.
Jalankan (dobel-klik) file Setup_MySQL_41.msi dan akan muncul dialog
seperti dibawah ini:

Microsoft Visual Basic 6.0

129

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

2. Klik tombol Next > akan tampil dialog berikut:

Microsoft Visual Basic 6.0

130

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
3. Pilih Typical dan klik tombol Next > akan tampil dialog berikut:

4. Jika

tidak

ada

perubahan

yang

ingin

anda

lakukan,

klik

tombol Install. Proses instalasi akan dilakukan dan jika sudah selesai
maka muncul dialog berikut:

Microsoft Visual Basic 6.0

131

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

5. Pilih Skip Sign-Up dan klik tombol Next > sehingga muncul dialog
berikut:

6. Beri tanda contreng pada pilihan: Configure the MySQL Server


now. Dan akan muncul jendela dialog baru sbb:

Microsoft Visual Basic 6.0

132

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

7. Klik tombol Next > dan akan muncul dialog berikut:

8. Pilih Detailed Configuration agar konfigurasi lebih detail. Klik Next >
dan akan muncul dialog berikut:

Microsoft Visual Basic 6.0

133

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

9. Pada prinsipnya anda boleh memilih salah satu dari 3 pilihan diatas.
Berhubung jika komputer digunakan sebagai server pulsa biasanya tidak
banyak

aplikasi

lain

yang

dijalankan

maka

pilihlah Server

Machine (lagipula ini kan untuk keperluan server). Klik tombol Next >
dan akan muncul dialog berikut:

Microsoft Visual Basic 6.0

134

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
10. Pilih Multifunctional Database karena database akan digunakan
untuk keperluan yang umum dan bukan untuk aplikasi web. Selain itu,
memang database R7/R7SE menggunakan storage engine MyISAM. Klik
Next > dan akan muncul dialog berikut:

11. Anda tidak perlu merubah apapun. Klik saja tombol Next > dan akan
muncul dialog berikut:

Microsoft Visual Basic 6.0

135

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
12. Untuk mengantisipasi jumlah koneksi yang dibutuhkan, anda bisa
memilih Online

Transaction

Processing

(OLTP) yang

dapat

menampung jumlah koneksi sebanyak 500 koneksi aktif. Anda juga bisa
memilih Decision

Support

(DSS)/OLAP atau Manual

Setting dan

mengisinya dengan 25 koneksi atau lebih. Setelah itu klik Next > dan
akan muncul dialog berikut:

13. Beri tanda contreng pada pilihan Enable TCP/IP Networking bila
anda ingin agar database dapat diakses melalui jaringan. Tapi jika tidak,
maka hanya koneksi dari localhost (atau IP: 127.0.0.1) yang dapat
mengakses database. Isikan Port Number dengan nomor default untuk
koneksi MySQL yaitu 3306. Klik Next > untuk melanjutkan dan akan
muncul dialog berikut:

Microsoft Visual Basic 6.0

136

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

14. Pilih Standard Character Set. Pilihan ini sama apabila anda
memilih Manual Selected DCS/Collation dan memilih latin1 sebagai
character set. Klik tombol Next > untuk melanjutkan dan akan muncul
dialog berikut:

Microsoft Visual Basic 6.0

137

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
15. Beri tanda contreng pada pilihan Install As Windows Service, pilih
Service

Name: MySQL dan

beri

centang

pada

pilihan Launch the

MySQL Server automaticallyagar service MySQL langsung dijalankan


saat

Windows

dimulai.

Anda

boleh

memberi atau

menghilangkan

contreng pada pilihan Include Bin Directory in Windows PATH. Klik


tombol Next > untuk melanjutkan dan akan muncul dialog berikut:

16. Beri contreng pada pilihan Modify Security Settings. Isikan New
root password: root dan Confirm: root. Jika anda ingin menggunakan
password lain, anda juga harus menggunakan password tersebut pada
setting database di R7/R7SE. Beri tanda contreng pada pilihan Enable
root access from remote machines jika anda ingin agar akses dapat
dilakukan dari jaringan. Anda tidak perlu dan disarankan tidak memberi
contreng pada pilihan Create An Anonymous Account. Klik tombol

Microsoft Visual Basic 6.0

138

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Next

>

untuk

melanjutkan

dan

akan

muncul

dialog

berikut:

17. Klik tombol Execute untuk memulai konfigurasi dan tunggu beberapa
saat sampai proses konfigurasi selesai.

18. Apabila ada ada proses yang tidak berhasil, cobalah lakukan Uninstall
atau hapus secara manual folder instalasi MySQL anda beserta semua file
didalamnya dan restart komputer anda kemudian lakukan instalasi ulang.
Microsoft Visual Basic 6.0

139

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Jika semuanya berhasil, maka akan muncul dialog berikut dan service
MySQL sudah berjalan di komputer anda.

Klik tombol Finish untuk menutup program instalasi. Service MySQL


sudah berjalan di komputer anda dan anda dapat melakukan proses
instalasi RM239R7/R7SE. Selamat mencoba, semoga berhasil.

Microsoft Visual Basic 6.0

140

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
C. Mengenal Microsoft Acces
Microsoft Access (atau Microsoft Office Access) adalah sebuah program
aplikasi basis data komputer relasional yang ditujukan untuk kalangan
rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan
anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word,
Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin
basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan
grafis yang intuitif sehingga memudahkan pengguna. Versi terakhir adalah
Microsoft Office Access 2007 yang termasuk ke dalam Microsoft Office System
2007.
Microsoft Access dapat menggunakan data yang disimpan di dalam
format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server,
Oracle Database, atau semua kontainer basis data yang mendukung standar
ODBC. Para pengguna/programmer yang mahir dapat menggunakannya untuk
mengembangkan perangkat lunak aplikasi yang kompleks, sementara para
programmer

yang

kurang

mahir

dapat

menggunakannya

untuk

mengembangkan perangkat lunak aplikasi yang sederhana. Access juga


mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat
digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.
Empat object terpenting dalam MS.Access, adalah :

Tabel, object utama dalam sebuah database

Form, digunakan untuk menampilkan data yang tersimpan dalam table

Query, berguna untuk menampilkan, mengubah dan menganalisis data.


Merupakan satu dari dua sumber data selain table

Report, berfungsi sebagai rangkuman dan mencetak data secara efektif.

Microsoft Visual Basic 6.0

141

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Tipe data dalam MS.Access yaitu :
TEXT :
Tipe data ini menerima semua karakter baik huruf, angka, titik, koma,
ataupun yang lain dan panjang karekternya ditentukan oleh nilai yang ada
pada filesize yang ada dalam properti sampai 255 karakter, biasanya tipe ini
sering digunakan untuk file alamat, dan yang lain
NUMBER :
tipe ini hanya di khususkan untuk bilangan dari 0 dsampai 9, dan tidak
mengenal adanya tanda tanda baca, misalnya titik, koma dan lain lain
CURRENCY :
Tipe ini hanya berisi nilai mata uang
DATE/TIME :
Tipe ini hanya di khususkan untuk penggunaan tanggal dan waktu, dan
untuk format waktu dapat diatur tersendiri dengan propertisnya
AUTO NUMBER :
Tipe ini digunakan untuk memberikan nomor secara berurutan, dan secar
automatis di berikan oleh sistem Access

Microsoft Visual Basic 6.0

142

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
MEMO :
Tipe ini sama dengan tipe text, hanya saja yang membedakan dengan tipe text
adalam panjang maksimum type ini adalah 65535 karakter, sedangkan untuk
text hanya 255
YES/NO :
Tipe data ini hanya memiliki 2 ketentuan yaitu Yes/No, True/False, dan
yang lain, tipe ini hanya berbentuk Check List ketiha tipe ini dilihat pada
tmpilannya
OLE OBJECT :
Tipe data ini berfungsi untuk mengaitkan dalam sebuah objek, atau bisa
juga kita sebut dengan link, atau bisa juga untuk penyisipan objek misalnya
Foto, Gambar atau yang lainnya
LOOKUP WIZARD
Tipe

data

ini

:
digunakan

untuk

pengisian

data

pada

tabel

yang

besangkutan kita ambilkan dari tabel tabel yang lain, yang divisualisasikan
dalam bentuk Lisk Box atau Combo Box.
Database
adalah sekumpulan table yang saling berhubungan satu dengan yang lainnya.
Tabel terdiri atas Field dan Record. Field adalah Variable yang mewakili suatu
kumpulan record/data dan record adalah sekumpulan data yang mengandung
arti.

Microsoft Visual Basic 6.0

143

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Tabel
adalah kumpulan data-data yang sejenis yang menjadi sebuah obyek,
yang terdiri dari baris dan kolom. Antara setiap kolom memiliki hubungan yang
memberikan arti data. Misalnya tabel Peminjam, tabel ini berisi data peminjam
yang boleh meminjam buku di perpustakaan.

Baris
adalah isi dari tabel yang horisontal atau mendatar, isi setiap baris
dengan baris lainnya adalah terpisah. Tidak berkaitan karena tiap baris adalah
milik obyek yang berbeda. Misalnya baris pertama (1) dari tabel peminjam
adalah data milik si A, sedangkan baris kedua (2) milik si B.

Kolom
adalah isi tabel yang vertikal. Tiap kolom memiliki kaitan dengan kolom
sebelumnya atau setelahnya untuk setiap baris data. Misalnya kolom pertama
(1) berisi nomor mahasiswa sedangkan kolom kedua (2) berisi nama
mahasiswa. Maka nomor mahasiswa untuk baris pertama (1) adalah milik
nama mahasiswa baris pertama (1) juga.

3. Membuka Microsoft Access & Membuat Database (New Project)


Langkah langkah untuk membuka Microsoft Access dan membuat
database :
1. Click Start -All Program - Microsoft Office -Microsoft Access
2. Kemudian akan tampil jendela Microsoft Access, lalu click Blank Database
untuk membuat database.
3.Ketik nama database yang Anda inginkan kemudian click tombol create.

Microsoft Visual Basic 6.0

144

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
4. Membuat Table
Langkah langkah untuk membuat tabel :
1. Click tab Create pada jendela
2. Click Table Design pada ribbon Tables
3. Masukkan nama field beserta tipe datanya, kemudian simpan tabel (Ctrl+S)
4. Kemudian click ribbon View pada tab Home, lalu pilih Datasheet View untuk
masukkan data ke dalam tabel.

5. Membuat Table
Table Relationship adalah relasi atau hubungan antara beberapa tabel.
Relasi antar tabel dihubungkan oleh primary key dan foreign key. Untuk
membuat relationship maka masing-masing tabel harus memiliki primary key
dan foreign key untuk dapat menghubungkan antara tabel induk dengan tabel
anak.

Sehingga

membuat

diperlukan

relationship

teknik

antar

normalisasi

tabel.

terlebih

Normalisasi

dahulu

merupakan

sebelum
proses

pengelompokkan data elemen menjadi tabel yang menunjukkan entitas dan


relasinya.
a. Primary Key
Tabel

memiliki

primary

key,

yaitu

suatu

atribut

yang

tidak

hanya

mengidentifikasi secara unik suatu kejadian tetapi juga mewakili setiap


kejadian dari suatu entitas.
b.Foreign Key
Foreign key adalah atribut yang melengkapi relationship dan menunjukkan
hubungan antara tabel induk dengan tabel anak. Foreign key ditempatkan pada
tabel anak.

Microsoft Visual Basic 6.0

145

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
A. Implementasi Database pada MS-ACCESS
Untuk

tugas

ini

saya

akan

membuat

sebuah

database

dengan

menggunakan software database Microsoft Access. Database yang akan dibuat


adalah database DATA BUKU, yang terdiri dari tiga tabel yaitu tabel pengarang,
tabel penerbit, dan tabel buku.
Langkah langkah :
a.

Membuat database baru

Caranya :
-

Buka Menu lalu pilih Microsoft Office Microsoft Access

Setelah muncul tampilan Microsoft Access

Klik Blank Database

Lalu isi File Name : Tugasku

Kemudian klik tombol Create

Microsoft Visual Basic 6.0

146

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
b. Membuat Tabel Baru
Caranya :
-

Setelah masuk dengan mengklik tombol Create maka selanjutnya adalah


membuat table baru dengan memilih menu Create setelah itu double klik
pada Table Design.

Kemudian

buat

table

t_pengarang

dimana

kd_pengarang

menjadi

primary key.

Microsoft Visual Basic 6.0

147

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Untuk menjadikan ID Anggota menjadi primary key, caranya cukup


mudah cukup dengan klik kanan di kd_pengarang lalu pilih primary key.

Setelah itu isikan semua data-data pada table pengarang, table penerbit, table
buku. Caranya dengan double klik pada ID Anggota di menu All Tables.

Microsoft Visual Basic 6.0

148

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB VIII
Koneksi MySQL dengan Visual Basic

LATIHAN 16
A. Membuat Koneksi MySQL dengan Visual Basic
Sebelum membuat koneksi dengan visual basic anda harus
membuat database ya. Buat nama database pada MySQL dengan nama obat.

Selanjutnya buatlah beberapa table seperti gambar dibawah ini :

Microsoft Visual Basic 6.0

149

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Berikut sintaks ya :
CREATE TABLE MsJenisObat(
id_jenis_obat varchar (10) primary key not null,
JenisObat varchar (50)
);

CREATE TABLE MsObat(


id_obat varchar (10) primary key not null,
id_jenis_obat varchar (10),
NamaObat varchar (50),
Harga numeric,
Stok int,
foreign key (id_jenis_obat) references MsJenisObat on update
cascade on delete cascade
);

Selanjutnya masukkan data seperti gambar berikut

Berikut sintaks insert data ya


INSERT INTO MsJenisObat VALUES('JO001','Obat Flu');
INSERT INTO MsJenisObat VALUES('JO002','Obat Batuk');

Microsoft Visual Basic 6.0

150

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
INSERT INTO MsJenisObat VALUES('JO003','Vitamin');
INSERT INTO MsJenisObat VALUES('JO004','AntiBiotik');
INSERT INTO MsJenisObat VALUES('JO005','Obat Bius');

INSERT INTO MsObat VALUES ('OB001','JO001','Stop Cold',3000,200);


INSERT INTO MsObat VALUES ('OB002','JO001','Procold',2000,200);
INSERT INTO MsObat VALUES ('OB003','JO002','Fix Formula
44',35000,100);
INSERT INTO MsObat VALUES ('OB004','JO002','OBH Combi',25000,80);
INSERT INTO MsObat VALUES ('OB005','JO003','Vitamin C',15000,150);
INSERT INTO MsObat VALUES ('OB006','JO003','Vitacimin',5000,120);

Silakan untuk melihat data ya dengan menggunakan perintah select seperti


gambar dibawah ini :

Sekarang

kita

sampai

pada

tahapan

implementasi

system

untuk

membuat program. Pada pembuatan program ini, penulis membagi menjadi


beberapa langkah kerja, seperti pengaturan ODBC, pembuatan form-form,
pembuatan report-report, pembuatan menu, dan kompilasi program.

Microsoft Visual Basic 6.0

151

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Pengaturan ODBC

Tahapan pengaturan ODBC adalah tahapan dimana kita member nama sumber
data (DSN = Data Source Name), tahapan pengaturan ODBC sebagai berikut :
1. Pilih Start > Settings > Control Panel > Administrative Tools > Data
Sources (ODBC)
2. Sehingga akan muncul gambar seperti berikut

3. Klik tab system DSN, akan muncul kotak system Data Sources; seperti
gambar dibawah ini

4. Klik Add., akan muncul kotak Create New Data Source. Pilih Name
MySQL ODBC 3.51 Driver > Finish. seperti gambar dibawah ini.
Microsoft Visual Basic 6.0

152

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

5. Isi kotak DSN configuration seperti gambar dibawah ini.

6. Sebelum kita klik Test Data Source, jalankan dahulu WinMySQLAdmin di


Windows Explorer pada folder MySQL\bin. Jika ada pertanyaan password,
kilk saja cancel

7. Buka database obat, seperti gambar dibawah ini

Microsoft Visual Basic 6.0

153

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

8. Kemudian pada kotak DSN Configuration, klik tombol perintah Test Data
Source. Jika koneksi sukses, akan tampil seperti gambar berikut.

9. Klik OK > OK

10.

Tampilan Akhir ODBC Data Source Administrator, sebagai berikut

Microsoft Visual Basic 6.0

154

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Pembuatan Form-Form
Selanjutnya membuat form MsJenisObat, sebelum menuat form aktifkan
dahulu

komponen

datagrid

dan

ADODC,

caranya

pilih

Project

>

Components, kemudian pilih Microsoft ADO Data Control 6.0 (OLEDB)


dan Microsoft DataGrid Control 6.0 (OLEDB), seperti gambar dibawah ini:

Selanjutnya buat form seperti gambar dibawah ini :

Microsoft Visual Basic 6.0

155

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Pengaturan propertinya sebagai berikut.

No Objek

Properti

Nilai

Form1

StartUpPosition

2-CenterScreen

Form1

ControlBox

False

Form1

BorderStyle

1-Fixed sigle

Command1

Caption

&Selesai

Command1

Font/Fontstyle

Bold

Mengatur Properti ConnectionString ADODC1, caranya sebagai berikut


1. Klik kanan pada ADODC1, sperti gambar dibawah ini

2. Pilih Opsi Use ODBC Data Source Nama, kemudian pilih nama DSN :
MyKoneksi > APPLY, seperti gambar dibawaj ini

Microsoft Visual Basic 6.0

156

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

3. Pilih Tab RecordSource, akan tampil kotak isian dan atur seperti
gambar berikut :

4. Klik objek DataGrid, set (atur) property Datasource menjadi ADODC1,


kemudian kilk kanan pada DataGrid pilih Retrieve fields. Jika ada
konfirmasi, klik OK
5. Klik dua kali objek command1, ketikkan perintah sebagai berikut :
Unload Me
6. Jalankan Program sehingga tampilan sebagai berikut
Microsoft Visual Basic 6.0

157

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Soal :
Sebagai latihan buatlah Form Obat dengan cara yang sama. Dan buatlah
tombol Tambah, Edit, Batal, Simpan, Selesai.

Microsoft Visual Basic 6.0

158

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB IX
Koneksi Ms. Acces dengan Visual Basic

LATIHAN 17
Buatlah Database dari Ms. Acces dengan Nama DBDasar1, Buatlah Table
sesuai kolom dibawah ini :
No

Field Name

Data Type

Field size

KodeBrg

Txt

NamaBrg

Txt

30

HargaBeli

Number

Long Integer

HargaJual

Number

Long Integer

JumlahBrg

Number

Integer

Simpan Table Dengan Nama Barang.

Selanjutnya buka Visual Basic buatlah Form Seperti Gambar Dibawah ini :

Microsoft Visual Basic 6.0

159

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Setting Pengaturanya :
No

Objek

Properti

Nilai

Label1

Caption

Kode

Border Style

1 fixed-single

Caption

Nama

Border Style

1 fixed-single

Caption

Harga Beli

Border Style

1 fixed-single

Caption

Harga Jual

Border Style

1 fixed-single

Caption

Jumlah

Border Style

1 fixed-single

Label2

Label3`

Label4

Label5

Combo1

Command1

Name

Cmdinput

Caption

&Input

Name

Cmdedit

Caption

&Edit

Name

Cmdhapus

Caption

&Hapus

Name

Cmdtutup

Caption

&Tutup

10

Command2

Command3

Command4

Microsoft Visual Basic 6.0

160

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
1. Selanjutnya buatlah Module dan Ketikkan sintaks Berikut :

Public Conn As New ADODB.Connection


Public RSBarang As ADODB.Recordset

Public Sub BukaDB()


Set Conn = New ADODB.Connection
Set RSBarang = New ADODB.Recordset
Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" &
App.Path & "\DBDasar1.mdb"
End Sub

2. Masukan code pada code editor :

Private Sub form_activate()


Call BukaDB
RSBarang.Open "select * from barang", Conn
Combo1.Clear
Do While Not RSBarang.EOF
Combo1.AddItem RSBarang!Kodebrg & Space(5) & RSBarang!namabrg
RSBarang.MoveNext
Loop
End Sub

Private Sub AutoNomor()


Call BukaDB
RSBarang.Open ("select * from Barang Where KodeBrg In(Select
Max(KodeBrg)From Barang)Order By KodeBrg Desc"), Conn

Microsoft Visual Basic 6.0

161

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
RSBarang.Requery
Dim Urutan As String * 6
Dim Hitung As Long
With RSBarang
If .EOF Then
Urutan = "BRG" + "001"
Text1 = Urutan
Else
Hitung = Right(!Kodebrg, 3) + 1
Urutan = "BRG" + Right("000" & Hitung, 3)
End If
Text1 = Urutan
End With
End Sub

Private Sub KosongkanText()


Combo1 = ""
Text1 = ""
Text2 = ""
Text3 = ""
Text4 = ""
Text5 = ""
End Sub

Private Sub SiapIsi()


Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
Text4.Enabled = True

Microsoft Visual Basic 6.0

162

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Text5.Enabled = True
End Sub

Private Sub TidakSiapIsi()


Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Text4.Enabled = False
Text5.Enabled = False
End Sub

Private Sub Kondisiawal()


KosongkanText
TidakSiapIsi
Cmdinput.Caption = "&Input"
Cmdedit.Caption = "&Edit"
Cmdhapus.Caption = "&Hapus"
Cmdtutup.Caption = "&Tutup"
Cmdinput.Enabled = True
Cmdedit.Enabled = True
Cmdhapus.Enabled = True
End Sub

Private Sub TampilkanData()


With RSBarang
If Not RSBarang.EOF Then
Text2 = RSBarang!namabrg
Text3 = RSBarang!HargaBeli
Text4 = RSBarang!HargaJual

Microsoft Visual Basic 6.0

163

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Text5 = RSBarang!JumlahBrg
End If
End With
End Sub

3. Masukan code pada Form :

Sub Form_Load()
Text1.MaxLength = 6
Text2.MaxLength = 30
Text3.MaxLength = 8
Text4.MaxLength = 8
Text5.MaxLength = 4
Kondisiawal
End Sub

4. Masukan code Untuk Commad Botton Input :

Private Sub CmdInput_click()


If Cmdinput.Caption = "&Input" Then
Cmdinput.Caption = "&Simpan"
Cmdedit.Enabled = False
Cmdhapus.Enabled = False
Cmdtutup.Caption = "&Batal"
SiapIsi
KosongkanText
Call AutoNomor
Text1.Enabled = False
Text2.SetFocus

Microsoft Visual Basic 6.0

164

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Else
If Text1 = "" Or Text2 = "" Or Text3 = "" Or Text4 = "" Or
Text5 = "" Then
MsgBox "Data Belum Lengkap...!"
Else
Dim SQLTambah As String
SQLTambah = "Insert Into Barang
(KodeBrg,NamaBrg,HargaBeli,HargaJual,JumlahBrg) values ('" & Text1
& "','" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text5 &
"')"
Conn.Execute SQLTambah
Call form_activate
Call Kondisiawal
End If
End If
End Sub

5. Masukan code Untuk Commad Botton Edit :

Private Sub CmdEdit_Click()


If Cmdedit.Caption = "&Edit" Then
Cmdinput.Enabled = False
Cmdedit.Caption = "&Simpan"
Cmdhapus.Enabled = False
Cmdtutup.Caption = "&Batal"
SiapIsi
Text1.Enabled = False
Combo1.SetFocus
Else

Microsoft Visual Basic 6.0

165

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If Text2 = "" Or Text3 = "" Or Text4 = "" Or Text5 = ""
Then
MsgBox "Masih Ada Data Yang Kosong"
Else
Dim SQLEdit As String
SQLEdit = "Update Barang Set NamaBrg= '" & Text2 & "',
HargaBeli='" & Text3 & "', HargaJual='" & Text4 & "',JumlahBrg='" &
Text5 & "' where KodeBrg='" & Text1 & "'"
Conn.Execute SQLEdit
Call form_activate
Call Kondisiawal
End If
End If
End Sub

6. Masukan code Untuk Commad Botton Hapus :

Private Sub CmdHapus_Click()


If Cmdhapus.Caption = "&Hapus" Then
Cmdinput.Enabled = False
Cmdedit.Enabled = False
Cmdtutup.Caption = "&Batal"
KosongkanText
SiapIsi
Text1.Enabled = False
Combo1.SetFocus
End If
End Sub

Microsoft Visual Basic 6.0

166

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
6. Masukan code Untuk Commad Botton Tutup :

Private Sub CmdTutup_Click()


Select Case Cmdtutup.Caption
Case "&Tutup"
Unload Me
Case "&Batal"
TidakSiapIsi
Kondisiawal
End Select
End Sub

7. Masukan code pada code Editor:

Function CariData()
Call BukaDB
RSBarang.Open "Select * From Barang where KodeBrg='" & Text1 &
"'", Conn
End Function

Private Sub Text1_Keypress(Keyascii As Integer)


Keyascii = Asc(UCase(Chr(Keyascii)))
If Keyascii = 13 Then
If Len(Text1) < 6 Then
MsgBox "Kode Harus 6 Digit"
Text1.SetFocus
Exit Sub
Else
Text2.SetFocus

Microsoft Visual Basic 6.0

167

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End If

If Cmdinput.Caption = "&Simpan" Then


Call CariData
If Not RSBarang.EOF Then
TampilkanData
MsgBox "Kode Barang Sudah Ada"
KosongkanText
Text1.SetFocus
Else
Text2.SetFocus
End If
End If

If Cmdedit.Caption = "&Simpan" Then


Call CariData
If Not RSBarang.EOF Then
TampilkanData
Text1.Enabled = False
Text2.SetFocus
Else
MsgBox "Kode Barang Tidak Ada"
Text1 = ""
Text1.SetFocus
End If
End If

If Cmdhapus.Enabled = True Then


Call CariData

Microsoft Visual Basic 6.0

168

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If Not RSBarang.EOF Then
TampilkanData
pesan = MsgBox("Yakin akan dihapus", vbYesNo)
If pesan = vbYes Then
Dim SQLHapus As String
SQLHapus = "Delete From Barang where kodebrg= '" &
Text1 & "'"
Conn.Execute SQLHapus
Call Kondisiawal
Call form_activate
Else
Kondisiawal
Cmdhapus.SetFocus
End If
Else
MsgBox "Data Tidak ditemukan"
Text1.SetFocus
End If
End If
End If
End Sub

Private Sub Text2_Keypress(Keyascii As Integer)


Keyascii = Asc(UCase(Chr(Keyascii)))
If Keyascii = 13 Then Text3.SetFocus
End Sub

Private Sub Text3_Keypress(Keyascii As Integer)


If Keyascii = 13 Then Text4.SetFocus

Microsoft Visual Basic 6.0

169

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or
Keyascii = vbKeyBack) Then Keyascii = 0
End Sub

Private Sub Text4_Keypress(Keyascii As Integer)


If Keyascii = 13 Then
If Val(Text4) <= Val(Text3) Then
MsgBox "harga jual jangan lebih kecil dari harga beli"
Text4 = ""
Text4.SetFocus
Exit Sub
Else
Text5.SetFocus
End If
End If
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or
Keyascii = vbKeyBack) Then Keyascii = 0
End Sub

Private Sub Text5_Keypress(Keyascii As Integer)


If Keyascii = 13 Then
If Cmdinput.Enabled = True Then
Cmdinput.SetFocus
ElseIf Cmdedit.Enabled = True Then
Cmdedit.SetFocus
End If
End If
If Not (Keyascii >= Asc("0") And Keyascii <= Asc("9") Or
Keyascii = vbKeyBack) Then Keyascii = 0

Microsoft Visual Basic 6.0

170

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Sub

Private Sub Combo1_Click()


Call BukaDB
RSBarang.Open "select * from Barang where Kodebrg='" & Left(Combo1,
6) & "'", Conn
If Not RSBarang.EOF Then
With RSBarang
If Not RSBarang.EOF Then
Text1 = RSBarang!Kodebrg
Text2 = RSBarang!namabrg
Text3 = RSBarang!HargaBeli
Text4 = RSBarang!HargaJual
Text5 = RSBarang!JumlahBrg
End If
End With
End If
End Sub

Private Sub Combo1_KeyPress(Keyascii As Integer)


If Keyascii = 13 Then
If Cmdedit.Caption = "&Simpan" Then
Call CariData
If Not RSBarang.EOF Then
TampilkanData
Text1.Enabled = False
Text2.SetFocus
Else
MsgBox "Kode Barang Barang Tidak Ada"

Microsoft Visual Basic 6.0

171

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Text1.SetFocus
Exit Sub
End If

ElseIf Cmdhapus.Caption = "&Hapus" Then


Call CariData
If Not RSBarang.EOF Then
TampilkanData
pesan = MsgBox("Yakin akan dihapus", vbYesNo)
If pesan = vbYes Then
Dim hapus As String
hapus = "Delete From Barang where Kodebrg= '" &
Text1 & "'"
Conn.Execute hapus
Kondisiawal
form_activate
Else
Kondisiawal
End If
Else
MsgBox "Data Tidak ditemukan"
Text1.SetFocus
End If
End If
End If
End Sub

Microsoft Visual Basic 6.0

172

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

BAB X
LATIHAN- LATIHAN

LATIHAN 19

Mengolah Database dengan SQL dan Crystal Report dalam Visual Basic
6.0
Merelasikan data merupakan suatu hal yang sangat diperlukan dalam
mengolah database. Pada kesempatan kali ini Anda akan mencoba membuat
relasi data dalam sebuah aplikasi pembelian dan tabel yang akan digunakan
adalah tabel barang, pemasok dan tabel beli. Jika kode barang diketik
maka akan muncul nama barang, harga satuan dan jumlah stok yang tersedia.
Begitu juga jika mengetik kode pemasok maka akan muncul nama pemasok,
alamat, nomor telepon dan relasi yang dapat dihubungi. Akan tetapi jika kode
barang yang diketik tidak ada, akan muncul komentar bahwa data barang
belum terdaftar, kemudian pertanyaan apakah data baru ini akan langsung
diinput atau tidak. Jadi dengan program ini kita dapat langsung mengentri data
barang tanpa harus membuka form pengolahan data barang.
Hal yang sama terjadi pada pemasok. Jika kode pemasok tidak terdaftar
pada tabel pemasok, akan muncul pertanyaan apakah data pemasok baru akan
langsung diinput atau tidak. Selain itu data pembelian ini akan langsung
mengubah jumlah data barang yang ada. Inilah salah satu kelebihan yang ada
pada program yang akan dibuat, dengan satu form (Pembelian) kita dapat
langsung mengentri data barang dan data pemasok jika ternyata kode barang
dan kode pemasoknya belum terdaftar pada kedua tabel tersebut dan jumlah
barang langsung di-update, kemudian data pembelian ini akan disimpan pada

Microsoft Visual Basic 6.0

173

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
tabel beli. Perhatikan dengan baik rancangan tabel beli yang pernah dibuat. Di
dalamnya terdapat field kode barang dan kode pemasok dengan field-field
tersebut merupakan field kunci pada tabel barang dan tabel pemasok. Dengan
teknik seperti ini maka tabel beli mampu mengambil data yang diperlukan dari
tabel barang dan tabel pemasok tersebut. Untuk mencoba program pembelian,
rancanglah sebuah form dengan bentuk seperti gambar di bawah ini:

Object

Properties

Value

Text1

Name

TxtNoFaktur

Text2

Name

TxtKodeBrg

Text3

Name

TxtHarga

Text4

Name

TxtKodePms

Text5

Name

TxtTelp

Text6

Name

TxtJumBeli

Text7

Name

TxtTglFaktur

Text8

Name

TxtNamaBrg

Text9

Name

TxtStokBrg

Microsoft Visual Basic 6.0

174

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Text10

Name

TxtNamaPms

Text11

Name

TxtAlamat

Text12

Name

TxtRelasi

Text13

Name

TxtTotal

Text14

Name

JmlData

Command1

Name

Cmdinput

Command1

Caption

&Input

Command2

Name

Cmdtutup

Command2

Caption

&Tutup

Data1

Name

Data1

Data1

RecordSource

C:\Belajar
VB\Master.mdb

Data1

Caption

Barang

Data2

Name

Data2

Data2

Caption

Pemasok

RecordSource

C:\Belajar

Data2

VB\Master.mdb

Data3

Name

Data3

Data3

Caption

Beli

RecordSource

C:\Belajar

Data3

VB\Master.mdb

Listing Program:
Fungsi untuk mencari jumlah data
Function JumlahData()
mjumlah = Data3.Recordset.RecordCount

Microsoft Visual Basic 6.0

175

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
JmlData = mjumlah
End Function

Private Sub Form_activate()


txtnofaktur.MaxLength = 6
txtkodebrg.MaxLength = 6
txtharga.MaxLength = 8
txtkodepms.MaxLength = 6
txttelpon.MaxLength = 8
txtjumbeli.MaxLength = 4
txttglfaktur.MaxLength = 8
txtnamabrg.MaxLength = 30
txtstokbrg.MaxLength = 4
txtnamapms.MaxLength = 30
txtalamat.MaxLength = 30
txtrelasi.MaxLength = 15
txttotal.MaxLength = 8
tidaksiapisi
cmdinput.SetFocus
JumlahData
End Sub

Private Sub cmdinput_click()


If cmdinput.Caption = "&Input" Then
cmdinput.Caption = "&Simpan"
cmdtutup.Caption = "&Batal"
siapisi
txtnofaktur.SetFocus
Else

Microsoft Visual Basic 6.0

176

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If txtnofaktur = Empty Then
pesan = MsgBox("Nomor Faktur Tidak Boleh Kosong", & _
0, "Informasi")
txtnofaktur.SetFocus
Else
With Data3.Recordset
.AddNew
!NoFaktur = txtnofaktur
!TglFaktur = txttglfaktur
!kodebrg = txtkodebrg
!kodepms = txtkodepms
!jmlbeli = txtjumbeli
.Update
End With
With Data1.Recordset
.Index = "barangdex"
.Seek "=", txtkodebrg
If .NoMatch Then
.AddNew
!kodebrg = txtkodebrg
!namabrg = txtnamabrg
!harga = txtharga
!Jumlah = txtjumbeli
.Update
Else
.Edit
!Jumlah = !Jumlah + txtjumbeli
.Update
End If

Microsoft Visual Basic 6.0

177

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End With
With Data2.Recordset
.Index = "Pemasokdex"
.Seek "=", txtkodepms
If .NoMatch Then
.AddNew
!kodepms = txtkodepms
!namapms = txtnamapms
!AlamatPms = txtalamat
!TelponPms = txttelpon
!RelasiPms = txtrelasi
.Update
End If
End With
Data1.Refresh
Data2.Refresh
Data3.Refresh
kosongkan
tidaksiapisi
semula
End If
End If
JumlahData
End Sub

Private Sub txtnofaktur_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txttglfaktur = Date

Microsoft Visual Basic 6.0

178

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtkodebrg.SetFocus
End If
End Sub

Private Sub txttglfaktur_keypress(KeyAscii As Integer)


If KeyAscii = 13 Then
txtkodebrg.SetFocus
End If
End Sub

Private Sub txtkodebrg_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
With Data1.Recordset
.Index = "barangdex"
.Seek "=", txtkodebrg
If Not .NoMatch Then
txtnamabrg.Enabled = False
txtharga.Enabled = False
txtstokbrg.Enabled = False
txtnamabrg = Data1.Recordset!namabrg
txtharga = Data1.Recordset!harga
txtstokbrg = Data1.Recordset!Jumlah
txtkodepms.SetFocus
Else
x = MsgBox("Kode Barang Tidak Ada, Data Barang & _
Langsung Dientri...!", vbYesNo, "Konfirmasi")
If x = vbYes Then
txtnamabrg.Enabled = True

Microsoft Visual Basic 6.0

179

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtharga.Enabled = True
txtstokbrg.Enabled = True
txtnamabrg = ""
txtharga = ""
txtstokbrg = ""
txtnamabrg.SetFocus
Else
txtkodebrg.SetFocus
End If
End If
End With
End If
End Sub

Private Sub txtkodepms_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
With Data2.Recordset
.Index = "pemasokdex"
.Seek "=", txtkodepms
If Not .NoMatch Then
txtnamapms.Enabled = False
txttelpon.Enabled = False
txtalamat.Enabled = False
txtrelasi.Enabled = False
txtnamapms = Data2.Recordset!namapms
txttelpon = Data2.Recordset!TelponPms
txtalamat = Data2.Recordset!AlamatPms
txtrelasi = Data2.Recordset!RelasiPms

Microsoft Visual Basic 6.0

180

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtjumbeli.Enabled = True
txtjumbeli.SetFocus
Else
x = MsgBox("Kode Pemasok Tidak Ada, Apakah & _
akan Langsung Diinput...?", vbYesNo, "Konfirmasi")
If x = vbYes Then
Siapisi
txtnamapms.SetFocus
Else
txtkodepms.SetFocus
End If
End If
End With
End If
End Sub

Private Sub txtnamabrg_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtharga.SetFocus
End If
End Sub

Private Sub txtharga_keypress(KeyAscii As Integer)


If KeyAscii = 13 Then
With Data1.Recordset
.Index = "barangdex"
.Seek "=", txtkodebrg
If .NoMatch Then

Microsoft Visual Basic 6.0

181

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtkodepms.SetFocus
End If
End With
End If
End Sub

Private Sub txtnamapms_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txttelpon.SetFocus
End If
End Sub

Private Sub txttelpon_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtalamat.SetFocus
End If
End Sub

Private Sub txtalamat_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtrelasi.SetFocus
End If
End Sub

Private Sub txtrelasi_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))

Microsoft Visual Basic 6.0

182

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If KeyAscii = 13 Then
txtjumbeli.SetFocus
End If
End Sub

Private Sub cmdtutup_Click()


Select Case cmdtutup.Caption
Case "&Tutup"
End
Case "&Batal"
kosongkan
tidaksiapisi
semula
End Select
End Sub

Private Sub kosongkan()


Dim Ctl As Control
For Each Ctl In Me
If TypeName(Ctl) = "TextBox" Then
Ctl.Text = ""
End If
Next
End Sub

Private Sub tampilkan()


tidaksiapisi
With Data3.Recordset
txtnofaktur = !NoFaktur

Microsoft Visual Basic 6.0

183

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtkodebrg = !kodebrg
txtharga = !harga
txttelpon = !TelponPms
txtrealsi = !RelasiPms
End With
End Sub

Private Sub siapisi()


Dim x As Control
For Each x In Me
If TypeName(x) = "TextBox" Then
x.Enabled = True
End If
Next
End Sub

Private Sub tidaksiapisi()


Dim x As Control
For Each x In Me
If TypeName(x) = "TextBox" Then
x.Enabled = True
End If
Next
End Sub

Private Sub semula()


cmdinput.Caption = "&Input"
cmdtutup.Caption = "&Tutup"
cmdinput.Enabled = True

Microsoft Visual Basic 6.0

184

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
cmdtutup.Enabled = True
End Sub

Private Sub txtjumbeli_Change()


txttotal.Enabled = False
txttotal = Val(txtjumbeli) * Val(txtharga)
End Sub

Private Sub txtjumbeli_keypress(KeyAscii As Integer)


If KeyAscii = 13 Then
cmdinput.SetFocus
End If
End Sub

Penjelasan Program:

With Data1.Recordset
.Index = "barangdex"
.Seek "=", txtkodebrg
If .NoMatch Then
.AddNew
!kodebrg = txtkodebrg
!namabrg = txtnamabrg
!harga = txtharga
!Jumlah = txtjumbeli
.Update
Else
.Edit
!Jumlah = !Jumlah + txtjumbeli

Microsoft Visual Basic 6.0

185

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
.Update
End If
End With

Potongan program ini berarti pada saat cmdinput diklik dan data barang
tidak ditemukan maka entrilah data baru tersebut, tapi jika data barang
ditemukan maka editlah jumlahnya dengan cara menambahkan jumlah
pembelian ke tabel barang (field jumlah).

Private Sub kosongkan()


Dim Ctl As Control
For Each Ctl In Me
If TypeName(Ctl) = "TextBox" Then
Ctl.Text = ""
End If
Next
End Sub

Sub program ini menyimpan semua control ke dalam variabel Ctl, dan
jika nama control tersebut terbuat dari TextBox, kosongkanlah isi yang ada di
dalamnya.

Cara

ini

lebih

efektif

digunakan

dibandingkan

dengan

mengosongkan semua text seperti cara yang pernah dibicarakan pada Bab I.
Jika

ada

control

lain

yang

digunakan

dalam

form

ini,

Anda

tinggal

menambahkan nama dari control yang digunakan itu. Misalnya Combobox,


DBCombo dan lain-lain.

Microsoft Visual Basic 6.0

186

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Contoh:

Private Sub kosongkan()


Dim Ctl As Control
For Each Ctl In Me
If TypeName(Ctl) = "TextBox" Then
Ctl.Text = ""
End If
If TypeName(Ctl) = "ComboBox" Then
Ctl.Text = ""
End If
If TypeName(Ctl) = "DBCombo" Then
Ctl.Text = ""
End If
Next
End Sub
Private Sub siapisi()
Dim x As Control
For Each x In Me
If TypeName(x) = "TextBox" Then
x.Enabled = True
End If
Next
End Sub

Perhatikan sub program di atas. Pada dasarnya sub program tersebut


sama dengan sub program Kosongkan. Perbedaanya terletak pada kondisi apa
yang diinginkan pada control tersebut, dalam hal ini semua control dapat
digunakan, maka perintah yang diberikan adalah Enabled=True.
Microsoft Visual Basic 6.0

187

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Program Penjualan Barang
Pada dasarnya program penjualan ini hampir mirip dengan program
pembelian, perbedaanya terletak pada:
1. Tabel Pemasok diganti dengan tabel pelanggan,
2. Tabel Beli diganti dengan jual,
3. Jumlah penjualan mengurangi jumlah barang,
4. Harga jual dinaikan 10% dari harga asli barang untuk
mendapatkan laba.

Kode barang dan

kode pemasok

yang berupa

text (di program

pembelian) diganti dengan DBCombo dan dengan DBCombo ini kita dapat
langsung menampilkan daftar field kode barang dan kode pemasok atau dapat
mengetik di dalamnya. Untuk membuat program tersebut, rancanglah form
seperti dibawah ini.

Object

Properties

Value

DBCombo1

Name

DBCombo1

DBCombo1

Rowsource

Data1

Microsoft Visual Basic 6.0

188

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
DBCombo1

Listfield

Kodebrg

DBCombo1

DBCombo1

DBCombo1

DBCombo2

Name

DBCombo2

DBCombo2

Rowsource

Data2

DBCombo2

Listfield

Kodeplg

Data1

Name

Data1

DatabaseName

C:\Belajar

Data1

VB\Master.mdb

Data1

Caption

Brg

Data1

RecordsetType

0 Table

Data2

Name

Data2

Data2

DatabaseName

C:\Belajar
VB\Master.mdb

Data2

Caption

Plg

Data2

RecordSource

Pelanggan

Data3

Name

Data3

Data3

DatabaseName

C:\Belajar
VB\Master.mdb

Data3

Caption

Jual

Data3

RecordSource

Jual

Listing Program:

Function JumlahData()
mjumlah = Data3.Recordset.RecordCount
JmldataJual = mjumlah

Microsoft Visual Basic 6.0

189

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Function

Private Sub Form_activate()


txtnofaktur.MaxLength = 6
txtharga.MaxLength = 8
txttelpon.MaxLength = 8
txtjumjual.MaxLength = 4
txttglfaktur.MaxLength = 8
txtnamabrg.MaxLength = 30
txtstokbrg.MaxLength = 4
txtnamaplg.MaxLength = 30
txtalamat.MaxLength = 30
txtrelasi.MaxLength = 15
txttotal.MaxLength = 8
tidaksiapisi
cmdinput.SetFocus
JumlahData
End Sub

Private Sub cmdinput_click()


JumlahData
If cmdinput.Caption = "&Input" Then
cmdinput.Caption = "&Simpan"
cmdtutup.Caption = "&Batal"
siapisi
txtnofaktur.SetFocus
Else
If txtnofaktur = Empty Then
pesan = MsgBox("Nomor Faktur Tidak Boleh Kosong", & _

Microsoft Visual Basic 6.0

190

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
0, "Informasi")
txtnofaktur.SetFocus
Else
With Data3.Recordset
.AddNew
!Nofaktur = txtnofaktur
!tglfaktur = txttglfaktur
!kodebrg = DBCombo1
!KodePlg = DBCombo2
!JmlJual = txtjumjual
.Update
Data3.Refresh
End With
With Data1.Recordset
.Index = "barangdex"
.Seek "=", DBCombo1
If .NoMatch Then
.AddNew
!kodebrg = DBCombo1
!Namabrg = txtnamabrg
!harga = txtharga
!Jumlah = txtstokbrg
.Update
Else
.Edit
!Jumlah = !Jumlah - txtjumjual
.Update
End If
End With

Microsoft Visual Basic 6.0

191

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
With Data2.Recordset
.Index = "Pelanggandex"
.Seek "=", DBCombo2
If .NoMatch Then
.AddNew
!KodePlg = DBCombo2
!Namaplg = txtnamaplg
!AlamatPlg = txtalamat
!TelponPlg = txttelpon
!RelasiPlg = txtrelasi
.Update
End If
End With
Data1.Refresh
Data2.Refresh
Data3.Refresh
kosongkan
tidaksiapisi
semula
End If
End If
JumlahData
End Sub

Private Sub txtnofaktur_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txttglfaktur = Format(Date, "DD/MM/YY")
DBCombo1.SetFocus

Microsoft Visual Basic 6.0

192

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End If
End Sub
Private Sub txttglfaktur_keypress(KeyAscii As Integer)
If KeyAscii = 13 Then
DBCombo1.SetFocus
End If
End Sub

Private Sub DBCombo1_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Private Sub dbcombo1_change()
If Len(DBCombo1.Text) < 6 Then
Exit Sub
End If
With Data1.Recordset
.Index = "barangdex"
.Seek "=", DBCombo1
If Not .NoMatch Then
txtnamabrg.Enabled = False
txtharga.Enabled = False
txtstokbrg.Enabled = False
txtnamabrg = Data1.Recordset!Namabrg
txtharga = (Val(Data1.Recordset!harga) + & _
(Val(Data1.Recordset!harga)) * 0.1)
txtstokbrg = Data1.Recordset!Jumlah
DBCombo2.SetFocus
Else
x = MsgBox("Kode Barang Tidak Ada, Data Barang & _

Microsoft Visual Basic 6.0

193

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Langsung dientri...!", vbYesNo, "Konfirmasi")
If x = vbYes Then
txtnamabrg.SetFocus
Else
DBCombo1.SetFocus
End If
End If
End With
End Sub

Private Sub DBCombo2_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Private Sub DBCombo2_change()
If Len(DBCombo2.Text) < 6 Then
Exit Sub
End If
With Data2.Recordset
.Index = "Pelanggandex"
.Seek "=", DBCombo2
If Not .NoMatch Then
txtnamaplg.Enabled = False
txttelpon.Enabled = False
txtalamat.Enabled = False
txtrelasi.Enabled = False
txtnamaplg = Data2.Recordset!Namaplg
txttelpon = Data2.Recordset!TelponPlg
txtalamat = Data2.Recordset!AlamatPlg
txtrelasi = Data2.Recordset!RelasiPlg

Microsoft Visual Basic 6.0

194

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
txtjumjual.Enabled = True
txtjumjual.SetFocus
Else
x = MsgBox("Kode Pelanggan Tidak Ada, Apakah akan & _
Langsung Diinput...?", vbYesNo, "Konfirmasi")
If x = vbYes Then
siapisi
txtnamaplg.SetFocus
Else
DBCombo2.SetFocus
End If
End If
End With
End Sub

Private Sub txtnamabrg_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtharga.SetFocus
End If
End Sub

Private Sub txtharga_keypress(KeyAscii As Integer)


If KeyAscii = 13 Then
With Data1.Recordset
.Index = "barangdex"
.Seek "=", DBCombo1
If .NoMatch Then
txtstokbrg.SetFocus

Microsoft Visual Basic 6.0

195

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End If
End With
End If
End Sub

Private Sub txtnamaPlg_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txttelpon.SetFocus
End If
End Sub
Private Sub txtstokbrg_keypress(KeyAscii As Integer)
If KeyAscii = 13 Then
DBCombo2.SetFocus
End If
End Sub

Private Sub txttelpon_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtalamat.SetFocus
End If
End Sub

Private Sub txtalamat_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtrelasi.SetFocus
End If

Microsoft Visual Basic 6.0

196

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Sub

Private Sub txtrelasi_keypress(KeyAscii As Integer)


KeyAscii = Asc(UCase(Chr(KeyAscii)))
If KeyAscii = 13 Then
txtjumjual.SetFocus
End If
End Sub

Private Sub cmdtutup_Click()


Select Case cmdtutup.Caption
Case "&Tutup"
End
Case "&Batal"
kosongkan
tidaksiapisi
semula
End Select
End Sub

Private Sub kosongkan()


Dim Ctl As Control
For Each Ctl In Me
If TypeName(Ctl) = "TextBox" Then
Ctl.Text = ""
End If
If TypeName(Ctl) = "DBCombo" Then
Ctl.Text = ""
End If

Microsoft Visual Basic 6.0

197

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Next
End Sub

Private Sub tampilkan()


tidaksiapisi
With Data3.Recordset
txtnofaktur = !Nofaktur
DBCombo1 = !kodebrg
txtharga = !harga
txttelpon = !TelponPlg
txtrealsi = !RelasiPlg
End With
End Sub

Private Sub siapisi()


Dim x As Control
For Each x In Me
If TypeName(x) = "TextBox" Then
x.Enabled = True
End If
If TypeName(x) = "DBCombo" Then
x.Enabled = True
End If
Next
End Sub

Private Sub tidaksiapisi()


Dim x As Control
For Each x In Me

Microsoft Visual Basic 6.0

198

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
If TypeName(x) = "TextBox" Then
x.Enabled = False
End If
If TypeName(x) = "DBCombo" Then
x.Enabled = False
End If
Next
End Sub

Private Sub semula()


cmdinput.Caption = "&Input"
cmdtutup.Caption = "&Tutup"
cmdinput.Enabled = True
cmdtutup.Enabled = True
End Sub

Private Sub txtjumJual_Change()


If Val(txtjumjual) > Val(txtstokbrg) Then
x = MsgBox("Persediaan Barang Kurang, Lihat Stok & _
Barang...!", 0, "Informasi")
txtjumjual.SetFocus
Else
txttotal.Enabled = False
txttotal = Val(txtjumjual) * Val(txtharga)
End If
End Sub

Private Sub txtjumJual_keypress(KeyAscii As Integer)


If KeyAscii = 13 Then

Microsoft Visual Basic 6.0

199

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
cmdinput.SetFocus
End If
End Sub

Program Pencetakan Data Pembelian


Walaupun yang tersimpan dalam program pencetakan data pembelian
adalah kode barang dan kode pemasok, yang akan ditampilkan dalam
pencetakan adalah nama barang dan nama pemasoknya. Hal ini dilakukan
karena jika yang ditampilkan hanya kode barang atau kode pemasok,
informasinya kurang bermanfaat. Untuk mengatasi hal inilah relasi data
diperlukan. Program dapat menampilkan nama barang dan nama pemasok
karena kode barang dan kode pemasok merupakan field kunci di tabel masingmasing. Jika sebuah field kunci tersimpan dalam tabel lain, item-item data
lainnya dapat ditampilkan dengan cara mengaktifkan field yang dijadikan kunci
tersebut. Hal yang sama dapat dilakukan pada program pencetakan data
penjualan. Untuk dapat menampilkan pencetakan ke layar, dibutuhkan satu
form tambahan yang tidak berisi obyek apapun di dalamnya dan form tersebut
kita ubah properti Name-nya menjadi Tampil. Untuk membuat program
pencetakan tersebut, buatlah rancangan form seperti gambar dibawah ini.

Object

Properties

Value

Command1

Name

Command1

Microsoft Visual Basic 6.0

200

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Command1

Caption

&Cetak Ke Layar

Data1

Name

Data1

Data1

Caption

Brg

Data1

DatabaseName

C:\Belajar
VB\Master.mdb

Data1

RecordsetType

0 Table

Data2

Name

Data2

Data2

Caption

Pms

Data2

DatabaseName

C:\Belajar
VB\Master.mdb

Data2

RecordsetType

0 Table

Data2

RecordSource

Pemasok

Data3

Name

Data3

Data3

Caption

Beli

Data3

DatabaseName

C:\Belajar
VB\Master.mdb

Data3

RecordsetType

1 Dynaset

Data3

RecordSource

Beli

Listing Program:

Private Sub Command1_Click()


Tampil.Show
definisikan variabel hitungan
Dim MSubtotal, MTotal As Long
Dim MNo, MHal, MBaris As Integer
Dim MJumlah As Double
Microsoft Visual Basic 6.0

201

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
definisikan garis
Dim MGrs As String
Tampil.Show
Pilih bentuk huruf
Tampil.Font = "Courier New"
With Data3.Recordset
Jika data pembelian kosong, munculkan pesan
If Data3.Recordset.RecordCount = 0 Then
x = MsgBox("Data Pembelian Belum Ada", 0, "Informasi")
Exit Sub
End If
bawa ke record pertama
.MoveFirst
mtotalharga = 0
mtotalbeli = 0
mtotalbayar = 0
MNo = 0
MHal = 0
Cetak Judul laporan
Do While Not .EOF
MHal = MHal + 1
Tampil.Print
Tampil.Print
Tampil.FontBold = True
Tampil.FontSize = 10
Tampil.Print Tab(10); "Data Pembelian PT. ABC"
Tampil.Print Tab(10); "Tanggal Cetak: "; Format(Date,& _
"DD-MMM-YY")
Tampil.FontBold = False

Microsoft Visual Basic 6.0

202

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Tampil.FontSize = 8
Tampil.Print
Tampil.Print Tab(90); "Hal:"; Format(MHal, "###")
MGrs = String$(110, "-")
Tampil.Print MGrs
Tampil.Print Tab(3); "No.";
Tampil.Print Tab(8); "No Fkt";
Tampil.Print Tab(18); "TGL Fkt";
Tampil.Print Tab(30); "Nama Barang";
Tampil.Print Tab(57); "Nama Pemasok";
Tampil.Print Tab(82); "Harga";
Tampil.Print Tab(92); "Jumlah";
Tampil.Print Tab(105); "Total"
Tampil.Print MGrs
msubtotalbeli = 0
msubtotalbayar = 0
MBaris = 0
cetak isi tabel
Do While Not .EOF And MBaris <= 30
MNo = MNo + 1
Data1.Recordset.Index = "Barangdex"
Data1.Recordset.Seek "=", Data3.Recordset!kodebrg
Data2.Recordset.Index = "Pemasokdex"
Data2.Recordset.Seek "=", Data3.Recordset!kodepms
mharga = Data1.Recordset!harga
mbeli = Data3.Recordset!jmlbeli
Mbayar = mharga * mbeli
Tampil.Print Tab(2); RKanan(MNo, "###");
Tampil.Print Tab(8); Data3.Recordset!NoFaktur;

Microsoft Visual Basic 6.0

203

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Tampil.Print Tab(18);Format(Data3. & _
Recordset!TglFaktur, "DD-MMM-YY");
Tampil.Print Tab(30); Data1.Recordset!namabrg;
Tampil.Print Tab(57); Data2.Recordset!namapms;
Tampil.Print Tab(78); RKanan(mharga, "###,###,###");
Tampil.Print Tab(92); RKanan(mbeli, "#,###");
Tampil.Print Tab(100); RKanan(Mbayar, "###,###,###")
msubtotalbeli = msubtotalbeli + mbeli
msubtotalbayar = msubtotalbayar + Mbayar
MBaris = MBaris + 1
.MoveNext
Loop
mtotalbeli = mtotalbeli + msubtotalbeli
mtotalbayar = mtotalbayar + msubtotalbayar
Tampil.Print MGrs
Tampil.Print Tab(5); "Sub Total:";
Tampil.Print Tab(92); RKanan(msubtotalbeli, "#,###");
Tampil.Print Tab(100); RKanan(msubtotalbayar, & _
"###,###,###") & ",-"
Tampil.Print Tab(5); "Total:";
Tampil.Print Tab(92); RKanan(mtotalbeli, "#,###");
Tampil.Print Tab(100); RKanan(mtotalbayar, "###,###,###")
& ",-"
Tampil.Print MGrs
Loop
End With
End Sub
Fungsi Meratakan Angka (Numeric)
Private Function RKanan(NData, CFormat) As String

Microsoft Visual Basic 6.0

204

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
RKanan = Format(NData, CFormat)
RKanan = Space(Len(CFormat) - Len(RKanan)) + RKanan
End Function

Hasil:

Microsoft Visual Basic 6.0

205

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
LATIHAN 20 : Membuat Aplikasi Data Teman
1. Buatlah sebuah aplikasi baru (File | New Project | Standard EXE)
2. Gantilah properties masing-masing komponen seperti tertera dibawah ini :
Object
Form1
Form1
Label1
Label2
Label3
Label4
Label5
Label5
Label5
Label5
TextBox1
TextBox2
TextBox3
TextBox4
TextBox1
TextBox2
TextBox3
TextBox4
ComboBox
DataGrid
Commad1
Commad1
Commad2
Commad2
Commad3
Commad3
Commad4
Commad4
Commad5
Commad5
Commad6
Commad6
Commad7
Commad7

Properties
Name
Caption
Caption
Caption
Caption
Caption
Name
Caption
BackStyle
Border Style
Name
Name
Name
Name
Text
Text
Text
Text
Name
Name
Name
Caption
Name
Caption
Name
Caption
Name
Caption
Name
Caption
Name
Picture
Name
Picture

Value
frmTeman
Animasi Data Teman
Id
Nama
Kelamin
Alamat
lblStatus
Kosong
1-opaque
1- Fixed Single
txtFields
txtFields
txtFields
txtFields
kosong
kosong
kosong
Kosong
cboKelamin
grdData
cmdUpdate
&Update
cmdCancel
&Cancel
cmdDelete
&Delete
cmdRefresh
&Refresh
cmdClose
&Close
cmdFirst
masukkan Gambar
cmdPrevious
masukkan Gambar

Microsoft Visual Basic 6.0

206

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Commad8
Commad8
Commad9
Commad9

Name
Picture
Name
Picture

cmdNext
masukkan Gambar
cmdLast
masukkan Gambar

3. Sesuai dengan Layout berikut :

4. Listing Program

'Contoh program database dengan salah satu input


'data menggunakan combobox.
'Reference: Microsoft ActiveX Data Objects 2.0 Library
'Database : Access 2003
'Program

: Muhammad Wali (2006)

'-----------------------------------------------------

Dim db As Connection

Dim WithEvents adoPrimaryRS As Recordset


Dim WithEvents adoCekAdd As Recordset
Microsoft Visual Basic 6.0

207

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Dim WithEvents adoAkhir As Recordset

Dim mbChangedByCode As Boolean


Dim mvBookMark As Variant
Dim mbEditFlag As Boolean
Dim mbAddNewFlag As Boolean
Dim mbDataChanged As Boolean
Dim HasiBatal As Boolean

Private Sub cboKelamin_KeyPress(KeyAscii As Integer)


If KeyAscii = 13 Then txtFields(3).SetFocus
End Sub

Private Sub Form_Load()


HasilBatal = False
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=MSDataShape;Data PROVIDER=" & _
"Microsoft.Jet.OLEDB.3.51;Data Source=" _
& App.Path & "\Data.mdb;"

Set adoPrimaryRS = New Recordset


adoPrimaryRS.Open "SHAPE {SELECT ID,Nama,Kelamin,Alamat " & _
"FROM Teman Order by ID} " & _
"AS ParentCMD APPEND ({select ID," & _
"Nama,Kelamin,Alamat FROM Teman " & _
"ORDER BY ID } AS ChildCMD RELATE ID " & _
"TO ID) AS ChildCMD", db, _
adOpenStatic, adLockOptimistic

Microsoft Visual Basic 6.0

208

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Dim oText As TextBox


For Each oText In Me.txtFields
Set oText.DataSource = adoPrimaryRS
Next
mbAddNewFlag = False
mbDataChanged = False
DeskripsiKelamin
Kunci
'Hubungkan recordset ke grid (tabel)
Set grdData.DataSource = adoPrimaryRS.DataSource
grdData.Enabled = True
End Sub

Private Sub Form_Resize()


On Error Resume Next
lblStatus.Width = Me.Width - 1500
cmdNext.Left = lblStatus.Width + 700
cmdLast.Left = cmdNext.Left + 340
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, _


Shift As Integer)
If mbEditFlag Or mbAddNewFlag Then Exit Sub
Select Case KeyCode
Case vbKeyEscape
cmdClose_Click
Case vbKeyEnd
cmdLast_Click

Microsoft Visual Basic 6.0

209

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Case vbKeyHome
cmdFirst_Click
Case vbKeyUp, vbKeyPageUp
If Shift = vbCtrlMask Then
cmdFirst_Click
Else
cmdPrevious_Click
End If
Case vbKeyDown, vbKeyPageDown
If Shift = vbCtrlMask Then
cmdLast_Click
Else
cmdNext_Click
End If
End Select
End Sub

Private Sub Form_Unload(Cancel As Integer)


Screen.MousePointer = vbDefault
End Sub

Private Sub adoPrimaryRS_MoveComplete(ByVal adReason _


As ADODB.EventReasonEnum, _
ByVal pError As ADODB.Error, _
adStatus As ADODB.EventStatusEnum, _
ByVal pRecordset As ADODB.Recordset)
lblStatus.Caption = "Record: " & _
CStr(adoPrimaryRS.AbsolutePosition) & "" & _
" dari " & adoPrimaryRS.RecordCount

Microsoft Visual Basic 6.0

210

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Sub

Private Sub adoPrimaryRS_WillChangeRecord(ByVal adReason _


As ADODB.EventReasonEnum, _
ByVal cRecords As Long, _
adStatus As ADODB.EventStatusEnum, _
ByVal pRecordset As ADODB.Recordset)
Dim bCancel As Boolean
Select Case adReason
Case adRsnAddNew
Case adRsnClose
Case adRsnDelete
Case adRsnFirstChange
Case adRsnMove
Case adRsnRequery
Case adRsnResynch
Case adRsnUndoAddNew
Case adRsnUndoDelete
Case adRsnUndoUpdate
Case adRsnUpdate
End Select
If bCancel Then adStatus = adStatusCancel
End Sub

Private Sub cmdAdd_Click()


Dim CekID As Integer
Set adoAkhir = New Recordset
adoAkhir.Open "SELECT ID FROM Teman", db
adoAkhir.MoveLast

Microsoft Visual Basic 6.0

211

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
CekID = CInt(adoAkhir.Fields("ID")) + 1
On Error GoTo AddErr
With adoPrimaryRS
If Not (.BOF And .EOF) Then
mvBookMark = .Bookmark
End If
.AddNew
lblStatus.Caption = "Add record"
mbAddNewFlag = True
SetButtons False
End With
BukaKunci
If cboKelamin.Text = "Laki-laki" Then
txtFields(2).Text = "L"
Else
txtFields(2).Text = "P"
End If
grdData.Enabled = False
txtFields(0).Text = Format(CekID, "0000")
txtFields(1).SetFocus
Exit Sub
AddErr:
MsgBox Err.Description
End Sub

Private Sub cmdDelete_Click()


On Error GoTo DeleteErr
If MsgBox("Yakin record ini mau dihapus?", _
vbQuestion + vbYesNo + vbDefaultButton2, _

Microsoft Visual Basic 6.0

212

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
"Hapus") = vbYes Then
With adoPrimaryRS
.Delete
.MoveNext
If .EOF Then .MoveLast
End With
DeskripsiKelamin
End If
Exit Sub
DeleteErr:
MsgBox Err.Description
End Sub

Private Sub cmdRefresh_Click()


On Error GoTo RefreshErr
If HasilBatal = True Then
SetButtons True
HasilBatal = False
End If

DeskripsiKelamin
BukaKunci
Set grdData.DataSource = Nothing
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open "SHAPE {SELECT ID,Nama,Kelamin,Alamat " & _
"FROM Teman Order by ID} " & _
"AS ParentCMD APPEND ({select ID," & _
"Nama,Kelamin,Alamat FROM Teman " & _
"ORDER BY ID } AS ChildCMD RELATE ID " & _

Microsoft Visual Basic 6.0

213

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
"TO ID) AS ChildCMD", db, _
adOpenStatic, adLockOptimistic

Dim oText As TextBox


'Hubungkan textbox dengan recordset
For Each oText In Me.txtFields
Set oText.DataSource = adoPrimaryRS
Next
Set grdData.DataSource = adoPrimaryRS.DataSource
grdData.Enabled = True
Exit Sub
RefreshErr:
cmdAdd.Enabled = False
cmdEdit.Enabled = False
cmdUpdate.Enabled = False
cmdDelete.Enabled = False
cmdCancel.Enabled = False
cmdRefresh.Enabled = True
mbEditFlag = False
mbAddNewFlag = False
adoPrimaryRS.CancelUpdate
If mvBookMark <> 0 Then
adoPrimaryRS.Bookmark = mvBookMark
Else
adoPrimaryRS.MoveFirst
End If
mbDataChanged = False
HasilBatal = True
cmdRefresh_Click

'Jadi, langsung otomatis refresh

Microsoft Visual Basic 6.0

214

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Exit Sub
End Sub

Private Sub cmdEdit_Click()


On Error GoTo EditErr
lblStatus.Caption = "Edit record"
mbEditFlag = True
SetButtons False
BukaKunci
With adoPrimaryRS
If Not (.BOF And .EOF) Then
mvBookMark = .Bookmark
End If
End With
txtFields(1).SetFocus
SendKeys "{Home}+{End}"
Exit Sub
EditErr:
MsgBox Err.Description
End Sub

Private Sub cmdCancel_Click()


On Error Resume Next
cmdRefresh_Click
If HasilBatal = True Then
Exit Sub
End If
SetButtons True
mbEditFlag = False

Microsoft Visual Basic 6.0

215

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
mbAddNewFlag = False
adoPrimaryRS.CancelUpdate
If mvBookMark > 0 Then
adoPrimaryRS.Bookmark = mvBookMark
Else
adoPrimaryRS.MoveFirst
End If
mbDataChanged = False
DeskripsiKelamin
Kunci
grdData.Enabled = True
End Sub

Private Sub cmdUpdate_Click()


On Error GoTo UpdateErr
Set adoCekAdd = New Recordset

For i = 0 To 3
If txtFields(i).Text = "" Then
MsgBox "Semua data harus diisi!", _
vbCritical, "Isi Data"
txtFields(i).SetFocus
Exit Sub
End If
Next i
adoCekAdd.Open "SELECT ID FROM Teman WHERE ID=" & _
"'" & txtFields(0).Text & "'", db

If adoCekAdd.RecordCount > 0 And _

Microsoft Visual Basic 6.0

216

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
mbAddNewFlag = True Then
MsgBox "ID ini sudah ada. Ganti dengan yang lain!", _
vbCritical, "ID Dobel"
txtFields(0).SetFocus
SendKeys "{Home}+{End}"
Exit Sub
End If

If cboKelamin.Text = "Laki-laki" Then


txtFields(2).Text = "L"
Else
txtFields(2).Text = "P"
End If
If mvBookMark > 0 Then
adoPrimaryRS.Bookmark = mvBookMark
Else
adoPrimaryRS.MoveFirst
DeskripsiKelamin
End If
adoPrimaryRS.UpdateBatch adAffectAll
mbEditFlag = False
mbAddNewFlag = False
SetButtons True
mbDataChanged = False
Kunci
grdData.Enabled = True
Exit Sub
UpdateErr:
MsgBox Err.Description

Microsoft Visual Basic 6.0

217

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Sub

Private Sub cmdClose_Click()


Set adoPrimaryRS = Nothing
Set adoCek = Nothing
Set db = Nothing
Unload Me
End Sub

Private Sub cmdFirst_Click()


On Error GoTo GoFirstError
adoPrimaryRS.MoveFirst
mbDataChanged = False
DeskripsiKelamin
Exit Sub
GoFirstError:
MsgBox Err.Description
End Sub

Private Sub cmdLast_Click()


On Error GoTo GoLastError
adoPrimaryRS.MoveLast
mbDataChanged = False
DeskripsiKelamin
Exit Sub
GoLastError:
MsgBox Err.Description
End Sub

Microsoft Visual Basic 6.0

218

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Private Sub cmdNext_Click()
On Error GoTo GoNextError
If Not adoPrimaryRS.EOF Then adoPrimaryRS.MoveNext
If adoPrimaryRS.EOF And adoPrimaryRS.RecordCount > 0 Then
Beep
adoPrimaryRS.MoveLast
End If
mbDataChanged = False
DeskripsiKelamin
Exit Sub
GoNextError:
MsgBox Err.Description
End Sub

Private Sub cmdPrevious_Click()


On Error GoTo GoPrevError
If Not adoPrimaryRS.BOF Then adoPrimaryRS.MovePrevious
If adoPrimaryRS.BOF And adoPrimaryRS.RecordCount > 0 Then
Beep
adoPrimaryRS.MoveFirst
End If
mbDataChanged = False
DeskripsiKelamin
Exit Sub
GoPrevError:
MsgBox Err.Description
End Sub

Private Sub SetButtons(bVal As Boolean)

Microsoft Visual Basic 6.0

219

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
cmdAdd.Visible = bVal
cmdEdit.Visible = bVal
cmdUpdate.Visible = Not bVal
cmdCancel.Visible = Not bVal
cmdDelete.Visible = bVal
cmdClose.Visible = bVal
cmdRefresh.Visible = bVal
cmdNext.Enabled = bVal
cmdFirst.Enabled = bVal
cmdLast.Enabled = bVal
cmdPrevious.Enabled = bVal
End Sub

Sub DeskripsiKelamin()
If txtFields(2).Text = "L" Then
cboKelamin.Text = "Laki-laki"
Else
cboKelamin.Text = "Perempuan"
End If
End Sub

Sub Kunci()
Dim i As Integer
For i = 1 To 3

'0 --> ID, jadi tidak ikut

txtFields(i).Locked = True
Next i
cboKelamin.Locked = True
grdData.Enabled = False
End Sub

Microsoft Visual Basic 6.0

220

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
Sub BukaKunci()
Dim i As Integer
For i = 1 To 3

'0 --> ID, jadi tidak ikut

txtFields(i).Locked = False
Next i
cboKelamin.Locked = False
grdData.Enabled = False
End Sub

Private Sub grdData_RowColChange(LastRow As Variant, ByVal LastCol


As Integer)
DeskripsiKelamin
End Sub

Private Sub txtFields_KeyPress(Index As Integer, _


KeyAscii As Integer)
Select Case Index
Case 0
If KeyAscii = 13 Then
txtFields(1).SetFocus
End If
Case 1
If KeyAscii = 13 Then
cboKelamin.SetFocus
End If
Case 3
If KeyAscii = 13 Then
cmdUpdate.SetFocus
End If

Microsoft Visual Basic 6.0

221

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
End Select
End Sub

5. Membuat Laporan Data Environment dan Data Report


Data Environment merupakan salah satu fasilitas pengolahan data pada
Visual Basic. Fasilitas ini diperkenalkan sejak Visual Basic 6. Pada umumnya
Data Environment digunakan untuk merancang sumber data yang akan
digunakan dalam pembuatan laporan

yang menggunakan Data Report.

Mempersiapkan Data Environment

Pada menu Project, More Activex Designer, Pilih Data Environment, dan
akan menambahkan menambahkan suatu Data Environmnet pada project
anda pada kelompok Designer.

Klik kanan pada Connection1 dan pilih properties. Aturlah properties seperti
pada ADODC untuk koneksi data ke data.mdb

Klik kanan pada Connection1 dan pilih Add Command

Microsoft Visual Basic 6.0

222

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Klik kanan pada Command1, dan pilih properties. Aturlah properties sebagai
berikut :

Pada General, Datasource, pilih SQL Statement, dan ketik


SELECT * FROM Teman

Dalam hal ini DariKode dan SampaiKode merupakan parameter. Membuat


report dengan Data Report

Pada menu Project, pilih Add Data Report, dan akan menambah
DataReport1 pada bagian Designer project anda.

Microsoft Visual Basic 6.0

223

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN

Aturlah properti DataReport1 sebagai berikut :

Data Source = DataEnvironment1


DataMember = Command1

Klik

kanan

pada

DataReport1

dan

pilih

Retrieve

Structure,

dan

rancanglah report anda seperti sebagai berikut ini :

Microsoft Visual Basic 6.0

224

Microsoft

VISUAL BASIC 6.0

Tingkat Menengah

MODUL PEMROGRAMAN
DAFTAR PUSTAKA

David Axmark dan Michael Monty Widenius, MySQL Manual 5.1, MySQL AB,
2006.
http://www.mysql.com (situs resmi MySQL)
Lou Tylee, 1998 KIDware, Learn Visual Basic 6.0
Muhammad Wali dan Taufik Iqbal (2007) SQL Complete, Indoprint.
Steven Holzner Visual Basic 6 Black Book (Publisher: The Coriolis Group)

Microsoft Visual Basic 6.0

225

Anda mungkin juga menyukai