Perangkat Lunak Simulasi Mesin Jual Otomatis Permen Dan Coklat Menggunakan Visual Basic 6.0

(1)

PERANGKAT LUNAK SIMULASI MESIN JUAL OTOMATIS

PERMEN DAN COKLAT MENGGUNAKAN VISUAL BASIC 6.0

TUGAS AKHIR

YAZID YAFIZHAM

102406027

PROGRAM STUDI D3 TEKNIK INFORMATIKA

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2013


(2)

PERANGKAT LUNAK SIMULASI MESIN JUAL OTOMATIS

PERMEN DAN COKLAT MENGGUNAKAN VISUAL BASIC 6.0

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya Komputer

YAZID YAFIZHAM

102406027

PROGRAM STUDI D3 TEKNIK INFORMATIKA

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2013


(3)

ii

PERSETUJUAN

Judul : PERANGKAT LUNAK SIMULASI MESIN JUAL

OTOMATIS PERMEN DAN COKLAT

MENGGUNAKAN VISUAL BASIC 6.0

Kategori : TUGAS AKHIR

Nama : YAZID YAFIZHAM

Nomor Induk Mahasiswa : 102406027

Program Studi : DIPLOMA (D3) TEKNIK INFORMATIKA

Departemen : MATEMATIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Juni 2013

Diketahui/Disetujui oleh

Departemen Matematika FMIPA USU

Ketua, Pembimbing,

Prof.Dr.Tulus, M.Si Drs. Marihat Situmorang, M.Kom.


(4)

PERNYATAAN

PERANGKAT LUNAK SIMULASI MESIN JUAL OTOMATIS

PERMEN DAN COKLAT

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebut sumbernya.

Medan, Juni 2013

YAZID YAFIZHAM 102406027


(5)

(6)

PENGHARGAAN

Syukur Alhamdulillah penulis ucapkan serta panjatkan ke hadirat Allah SWT yang telah memberikan rahmat, berkah serta hidayah-Nya kepada penulis sehingga penulis dapat menyelesaikan tugas akhir ini sebagai salah satu syarat untuk menyelesaikan perkuliahan pada Program Studi Diploma III Teknik Informatika Fakultas Matematika Dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

Pada kesempatan ini penulis mengucapkan terima kasih serta penghargaan yang sebesar-besarnya kepada ayahanda Naharuddin dan ibunda tersayang Dra.Hj.Nirmawaty Tanjung yang telah membimbing dengan penuh cinta kasih sayang, memelihara dan memperhatikan penulis sejak kecil serta selalu mencukupi segala keperluan baik secara moril maupun materil hingga akhirnya penulis mampu menyelesaikan laporan tugas akhir ini.

Selanjutnya penulis menyampaikan rasa terima kasih dan penghargaan yang sebesar-besarnya kepada semua pihak yang telah memberikan bantuan dan masukan, baik secara moril dan materil dalam menyelesaikan penulisan tugas akhir ini, terutama sekali kepada:

1. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen pembimbing penulis yang selalu memberikan masukan, baik kritik dan saran kepada penulis selama pembuatan tugas akhir ini mulai dari awal sampai dengan selesai.

2. Bapak Syahriol Sitorus, S.Si, M.IT selaku Ketua Program Studi D3 Teknik Informatika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera utara.

3. Bapak Prof.Dr.Tulus,M.Si selaku Ketua Departemen Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

4. Bapak Dr. Sutarman, M.Sc selaku Dekan Fakultas MIPA Universitas Sumatera Utara.

5. Bapak dan Ibu Dosen serta Staf Fakultas Matematika Dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

6. Buat Abang dan Kakakku Tersayang yang telah memberikan semangat kepada penulis dalam penyelesaian tugas akhir ini.

7. Kepada Ridho Adli, Faza Qintara, Sappe Herianto Manullang, Ricki Reynaldo Simanjuntak, Rizki Ananda Parinduri dan Dhita Pratiwi sebagai teman terdekat yang telah membantu dan memberi semangat penulis dalam menyelesaikan tugas akhir ini.

8. Buat seluruh alumni D3 Teknik Informatika yang selama ini telah membantu penulis dalam memberikan saran untuk menyelesaikan program.

9. Buat seluruh teman angkatan 2010 khusus nya Kom B2010 yang selama ini telah menjadi keluarga dan sahabat penulis.

10.Semua keluarga, saudara, dan juga rekan-rekan baik dikampus maupun diluar kampus.


(7)

v

Laporan ini sudah selesai, namun penulis menyadari bahwa masih ada kekurangan didalamnya karena keterbatasan pengetahuan dan kemampuan penulis. Untuk itu, diharapkan kritik dan saran yang bersifat membangun demi perbaikan dan penyempurnaan laporan ini. Semoga laporan ini bermanfaat bagi semua yang membaca sebagai wacana dalam memperluas cakrawala pengetahuan.

Kiranya Allah SWT memberikan hidayah-Nya kepada kita semua sehinga sukses dalam menggapai cita-cita yang diinginkan. Amin.

Medan, Juni 2013 Penulis,

YAZID YAFIZHAM NIM. 102406027


(8)

ABSTRAK

Di Indonesia saat ini bidang penjualan dalam memasarkan produk khususnya coklat dan permen masih banyak yang menggunakan pelayanan secara konvensional untuk sampai ke konsumen, terutama penjualan dalam lingkup kecil dari penjual ke konsumen akhir. Dimana dengan hanya mengandalkan penjualan secara konvensional ini, kita bisa perhitungkan berapa biaya yang diambil untuk setiap toko yang mereka ambil dari kelebihan menjual harga coklat dan permen untuk setiap kali penjualan untuk sampai kekonsumen akhir. Sehingga harga yang sampai ke konsumen jauh lebih mahal dari yang seharusnya dan harganya pun tidak merata disetiap toko. Oleh karena itu penulis ingin merancang suatu simulasi mesin jual otomatis dengan suatu perangkat lunak atau program yang menjadi alat untuk menjelaskan bagaimana proses kerja mesin jual otomatis yang dapat melayani konsumen secara langsung, sehingga konsumen akan memahami proses kerja mesin tersebut dan mendapatkan produk coklat atau permen yang diinginkannya.


(9)

vi

ABSTRACT

Indonesia is currently in the field of sales in marketing their products, especially chocolate and candy are still many who use conventional services to get to consumers, especially the sale of the small scope of the seller to the final consumer. Where to rely solely on conventional sales, we can calculate how much money was taken for each store they take of the excess selling price of chocolate and candy for every time a sale is to get to the end consumer. So the price is up to the consumer is much more expensive than it should and the price is not evenly distributed in every store. The authors therefore wish to design a simulation of automatic selling machines with a software or program as a means to explain how the work process automatic selling machines that can serve customers directly, so that consumers will understand the process of working the machine and get a chocolate or candy product wants.


(10)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Daftar Isi vii

Daftar Tabel ix

Daftar Gambar x

Bab 1 Pendahuluan 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan dan Manfaat 3

1.5 Metode Penelitian 3

1.6 Sistematika Penulisan 4

Bab 2 Landasan Teori 6

2.1Sejarah Mesin Jual Otomatis 6

2.2 Pengertian Perangkat Lunak 7

2.3 Pengertian Program Aplikasi 8

2.4 Proses Perangkat Lunak 8

2.5 Mengenal Visual Basic 6.0 9

2.5.1 Pemograman Event Driven 9

2.5.2 Memahami Objek 10

2.5.3 Pengertian dari Objek 10

2.5.4 Pembuatan Objek 11

2.5.5 Property 11

2.5.6 Event 11

2.5.7 Menjalankan Visual Basic 6.0 12

2.4 Flowchart 19

Bab 3 Perancangan Sistem 21

3.1 Definisi Perancangan Sistem 21

3.2 Gambaran Umum Sistem Rancangan Simulasi Mesin Jual Otomatis 21

3.3 Proses Perancangan 23

3.3.1 Perancangan Simulasi Mesin Jual Otomatis 23

3.3.2 Perancangan Form1 24

3.3.3 Perancangan Form2 25

3.3.4 Perancangan Form3 26


(11)

viii

3.3.6 Perancangan ucItem (UserControl) 27

3.3.7 Mengkompile Program 27

Bab 4 Implementasi Sistem 28

4.1 Pengertian Implementasi Sistem 28

4.2 Kebutuhan Sistem 30

4.3 Pengujian Program 32

4.3.1. Uang Tunai 33

Bab 5 Kesimpulan dan Saran 37

5.1 Kesimpulan 37

5.2 Saran 38

Daftar Pustaka xi


(12)

DAFTAR TABEL

Halaman


(13)

x

DAFTAR GAMBAR

Halaman

Gambar 2.1 Jendela Utama Program Komputer 12

Gambar 2.2 IDE Visual Basic 13

Gambar 2.3 Tampilan Awal Standard EXE 13

Gambar 2.4 Windows Properties 14

Gambar 2.5 Windows Form 15

Gambar 2.6 Windows Project 16

Gambar 2.7 Form Layout 16

Gambar 2.8 Toolbar 17

Gambar 2.9 Toolbox 17

Gambar 3.1 Flowchart Simulasi Mesin Jual Otomatis 22

Gambar 3.2 Tampilan New Project Microsoft Visual Basic 6.0 23

Gambar 3.3 Tampilan Lembar Kerja Form 24

Gambar 3.4 Tampilan Form1 Mesin Jual Otomatis 25

Gambar 3.5 Tampilan Form2 Menu Barang 25

Gambar 3.6 Tampilan Form3 Money 26

Gambar 3.7 Tampilan Form4 Barang 26

Gambar 3.10 Tampilan ucItem 27

Gambar 4.1 Tampilan Program MesinJualOtomatis.exe 32

Gambar 4.2 Tampilan uang Rp. 10000,- dimasukkan kedalam mesin 33 Gambar 4.3 Tampilan Mesin mendeteksi Jenis Transaksi dan Nominalnya 34 Gambar 4.4 Tampilan user memilih jenis barang dan harga tidak

melebihi nominal uang yang dimasukkan 34

Gambar 4.5 Tampilan user memilih jenis barang melebih nominal uang yang

Dimasukkan 35

Gambar 4.6 Tampilan proses pembatalan dan uang keluar dari mesin 35 Gambar 4.7 Tampilan user menekan tombol OK dan barang beserta uang kembalian


(14)

ABSTRAK

Di Indonesia saat ini bidang penjualan dalam memasarkan produk khususnya coklat dan permen masih banyak yang menggunakan pelayanan secara konvensional untuk sampai ke konsumen, terutama penjualan dalam lingkup kecil dari penjual ke konsumen akhir. Dimana dengan hanya mengandalkan penjualan secara konvensional ini, kita bisa perhitungkan berapa biaya yang diambil untuk setiap toko yang mereka ambil dari kelebihan menjual harga coklat dan permen untuk setiap kali penjualan untuk sampai kekonsumen akhir. Sehingga harga yang sampai ke konsumen jauh lebih mahal dari yang seharusnya dan harganya pun tidak merata disetiap toko. Oleh karena itu penulis ingin merancang suatu simulasi mesin jual otomatis dengan suatu perangkat lunak atau program yang menjadi alat untuk menjelaskan bagaimana proses kerja mesin jual otomatis yang dapat melayani konsumen secara langsung, sehingga konsumen akan memahami proses kerja mesin tersebut dan mendapatkan produk coklat atau permen yang diinginkannya.


(15)

vi

ABSTRACT

Indonesia is currently in the field of sales in marketing their products, especially chocolate and candy are still many who use conventional services to get to consumers, especially the sale of the small scope of the seller to the final consumer. Where to rely solely on conventional sales, we can calculate how much money was taken for each store they take of the excess selling price of chocolate and candy for every time a sale is to get to the end consumer. So the price is up to the consumer is much more expensive than it should and the price is not evenly distributed in every store. The authors therefore wish to design a simulation of automatic selling machines with a software or program as a means to explain how the work process automatic selling machines that can serve customers directly, so that consumers will understand the process of working the machine and get a chocolate or candy product wants.


(16)

PENDAHULUAN

1.1Latar Belakang.

Perkembangan ilmu pengetahuan dan teknologi semakin berkembang terutama pada teknologi komputerisasi, baik untuk kebutuhan dunia ilmu pengetahuan maupun bagi dunia usaha. Hal ini dikarenakan dukungan dari komputer yang dapat menggantikan atau mempermudah pekerjaan manusia, yang cara kerjanya jauh lebih cepat sehingga waktu lebih efisien serta memiliki ketelitian yang sangat tinggi sehingga kegagalan dapat ditekan sekecil mungkin.

Di Indonesia dibidang penjualan, dalam hal ini memasarkan produk khususnya permen atau coklat masih banyak yang menggunakan pelayanan secara konvensional untuk sampai ke konsumen, terutama penjualan dalam lingkup kecil dari penjual kekonsumen akhir. Akan tetapi Indonesia mulai mengalami perubahan dalam soal bidang penjualan produk – produk khususnya penjualan dalam lingkup kecil, dimana penjualan menggunakan alat bantu mesin yang berupa mesin jual otomatis.

Oleh karena itu penulis ingin merancang suatu simulasi mesin dengan suatu perangkat lunak atau program yang menjadi alat untuk menjelaskan bagaimana mesin jual otomatis dapat melayani konsumen secara langsung, sehingga konsumen akan


(17)

2

memahami proses kerja mesin tersebut dan mendapatkan produk permen dan coklat yang diinginkannya. Dengan demikian setelah adanya simulasi mesin jual otomatis ini diharapkan konsumen dapat menggunakan mesin tersebut.

Berdasarkan uraian tersebut, maka penulis tertarik untuk mengangkat judul “PERANGKAT LUNAK SIMULASI MESIN JUAL OTOMATIS PERMEN DAN COKLAT”.

1.2Rumusan Masalah.

Berdassarkan latar belakang pemilihan judul, maka yang menjadi permasalahan adalah bagaimana menampilkan simulasi kerja mesin jual otomatis ini.

1.3Batasan Masalah.

Berdasarkan kemampuan penulis, keterbatasan waktu, dan luasnya cakupan permasalahan dalam penulisan Tugas Akhir ini, maka penulis membuat batasan masalah yang akan dibahas yaitu:

1. Hanya menampilkan proses transaksi pembelian. 2. Proses kerja tidak secara detail hingga kedalam mesin

3. Produk yang ditampilkan mesin jual otomatis hanya permen dan coklat. 4. Harga, jenis barang dapat dirubah dan nilai mata uang dapat dirubah. 5. Produk yang dijual hanya untuk 16 jenis produk.


(18)

6. Menggunakan :

1. Uang kertas Rp. 1000, Rp. 2000, Rp. 5000, dan Rp. 10000.

7. Produk yang bisa diambil maksimal 16 barang untuk satu jenis dalam satu transaksi atau satu kali proses.

1.4Tujuan dan Manfaat.

Tujuan penyusunan tugas akhir ini adalah untuk merancang suatu perangkat lunak simulasi mesin jual otomatis .

Manfaat dari penyusunan tugas akhir ini adalah :

1. Untuk membantu pemahaman mengenai proses kerja mesin jual otomatis. 2. Menerapkan ilmu pengetahuan (teori) dan pratikum yang telah didapatkan

pada bangku kuliah.

1.5Metodologi Penelitian.

Langkah – langkah pembuatan perangkat lunak ini antara lain :

1. Membaca dan mempelajari buku – buku yang berhubungan dengan sistem operasi.

2. Mempelajari proses kerja dari mesin jual otomatis.

3. Mempelajari teknik – teknik dasar pemrograman dengan menggunkan bahasa pemrograman Microsoft Visual Basic 6.0


(19)

4

5. Merancang suatu perangkat lunak simulasi mesin jual otomatis dengan mengunakan bahasa pemrograman Visual Basic 6.0.

6. Menguji perangkat lunak dan memperbaiki kesalahan (error) yang muncul.

1.6Sistematika Penulisan.

Agar dapat memberikan gambaran yang jelas pada penulisan tugas akhir ini, maka penulis membaginya dalam beberapa bab sebagai berikut :

Bab 1 : Pendahuluan

Bab ini berisi tentang latar belakang masalah, identifikasi masalah, batasan masalah, tujuan dan manfaat, metologi penyelesaian, dan sistematika penulisan.

Bab 2 : Landasan Teori

Bab ini mengungkapkan tentang konsep dasar dan teori – teori yang mendukunang pembahasan untuk tema penulisan yang didapatkan dari beberapa literatur.

Bab 3 : Perancangan Sistem

Bab ini membahas tentang perancangan dan pembuatan simulasi mesin jual otomatis dan gambaran umum rancangannya.


(20)

Bab 4 : Implementasi Sistem

Bab ini membahas analisa hasil dan pembahasan simulasi mesin jual otomatis yang dirancang. Pembuatan program yang diajukan, tampilan dari program dan pengujian game tersebut.

Bab 5 : Kesimpulan dan Saran

Bab ini berisi kesimpulan dan saran dari bab – bab yang ada dalam tugas akhir ini.


(21)

BAB 2

LANDASAN TEORI

2.1Sejarah Mesin Jual Otomatis

Sejarah mesin jual otomatis pertama diperkirakan telah diciptakan pada abad pertama oleh Hero dari Alexandria, seorang matematikawan dan insinyur terkenal karena semangat inovatif. Hero's penemuan ditiadakan air suci dengan pembayaran satu koin. Air suci ini pembeli memasukkan koin ke dalam mesin, di mana ia mendarat di atas nampan. Nampan ini adalah terpasang pada tuas, yang membuka katup, melepaskan air. Untuk memastikan bahwa pembeli tidak terlalu banyak air suci, nampan dirancang untuk bergerak dengan berat koin. Itu akan terus menerus hingga ujung koin jatuh, dan penyeimbangakan kemudian tutup katup.

Tidak sampai lebih dari seribu tahun kemudian bahwa penemuan Hero menjadi populer lagi. Pada tahun 1880-an, mesin penjual di London dibagikan kartu pos. Ini adalah yang pertama dioperasikan koin mesin penjual seperti kita mengenali mereka hari ini. Pertama di Amerika dijual mesin penjual permen karet untuk melatih wisatawan pada tahun 1888. Pada tahun 1897, inovasi menyerang lagi ketika gerakan ini ditambahkan ke mesin. Sebuah perusahaan manufaktur berpikir bahwa penambahan angka di mesin-mesin, yang akan bergerak di sekitar setelah setiap pembelian, akan menarik lebih banyak pelanggan. Membuktikan bahwa suatu


(22)

penemuan dapat membuat yang lain, jenis baru ini gerakan mekanis menjadi dasar bagi mesin slot dan pinball. Perkembangan vending machine justru berkembang pesat di Jepang. Dimana hampir segala kebutuhan sehari-hari jika bisa di buat vending machinenya.

2.2Pengertian Perangkat Lunak

Perangkat lunak adalah perintah ( program komputer ) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan, struktur data yang memungkinkan program memanipulasi informasi secara proporsional, dan dokumen yang menggambarkan operasi dan kegunaan program. ( Perssman, 2002 )

Analisa kebutuhan merupakan langkah awal untuk menentukan perangkat lunak yang dihasilkan. Perangkat lunak yang baik dan sesuai dengan kebutuhan pengguna sangat tergantung kepada keberhasilan dalam melakukan analisa kebutuhan. Jika terjadi kesalahan dalam analisa kebutuhan, maka perangkat lunak dibuat menjadi tidak berguna. Perangkat lunak memiliki dua peran, di satu sisi berfungsi sebagai sebuah produk dan di sisi lain sebagai pengontrol pembuatan sebuah produk. Sebagai produk, perangkat lunak mengantarkan potensi perhitungan yang dibangun oleh perangkat lunak komputer. Perangkat lunak merupakan transformasi yang memproduksi, mengatur, memperoleh, memodifikasi, menampilkan, atau memancarkan informasi dimana pekerjaan ini menjadi sesederhana suatu bit tunggal atau sekompleks sebuah simulsi multimedia.


(23)

8

2.3Pengertian Program Aplikasi

Program adalah kata, ekspresi, pernyataan atau kombinasi yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer. Dalam pembuatan program tidak dapat terlepas dari tata cara penulisan sintaks yaitu aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan pernyataan. Selain itu, semantik juga berperan dalam penulisan program yaitu aturan untuk menyatakan suatu arti agar dapat dieksekusi dan menghasilkan output yang sesuai dengan yang diinginkan. (Sutedjo, Budi dan AN, Michael : 2000).

Jadi program aplikasi adalah program siap pakai. Program yang direka untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi lain. Aplikasi akan menggunakan sistem operasi (OS) komputer dan aplikasi yang lainnya yang mendukung.

2.4Proses Perangkat Lunak

Proses pengembangan perangkat lunak sama seperti proses rekayasa keteknikan lainnya. Sebuah model mengenai proses pengembangan perangkat lunak diturunkan dari aktivitas rekayasa keteknikan yang diterima oleh manajemen proyek perangkat lunak ( software ) karena menawarkan cara membuat proses pengembangan yang lebih baik ( pengembangan perangkat lunak Model Air Terjun. Roger S pressman,


(24)

2.5Mengenal Visual Basic 6.0

Microsoft Visual Basic adalah sebuah aplikasi yang digunakan untuk pengembangan dengan memanfaatkan keistimewaan konsep - konsep antarmuka grafis dalam Microsoft Windows. Aplikasi yang dihasilkan Visual Basic berkaitan erat dengan windows itu sendiri sehingga dibutuhkan pengetahuan bagaimana cara kerja windows.

Dalam pemograman Visual banyak istilah dan konsep untuk menyebut sesuatu yang membentuk sebuah aplikasi. Istilah – istilah tersebut memiliki arti yang sama dalam lingkungan pemograman Visual lainnya, seperti misalnya Objek, Property, dan Event.

2.5.1 Pemograman Event Driven

Pemograman Event Driven telah ada sebelum GUI ( Grapichal User Interface ) atau pemograman antar muka dibuat dan diimplementasikan dalam beberapa cara. Dengan diperkenalkannya mouse, pemograman Event Driven lebih banyak disukai oleh pemakai dan perancang program. Sebelum ada pemograman Event Driven, pemograman top - down digunakan untuk membuat kode yang menangani banyak pemprosesan. Selain itu aplikasi yang dirancang dengan teknik ini mudah untuk diperbaiki, disamping kodenya menjadi luwes. Namun aplikasi yang dibuat dengan metode ini biasanya memiliki menu yang komplek yang tergabung erat pada proses yang ada dalam program.


(25)

10

Pemograman Event Driven tidak mencoba menggantikan pemograman procedural, namun melengkapi dengan kerangka yang dapat membedakan antara user interface dan proses tertentu dalam aplikasi. Visual Basic dan aplikasi Event Driven lainnya menyediakan kerangka tersebut sehingga programmer lebih terkonsentrasi pada masalah aplikasinya. Kunci pokok dalam pemograman Event Driven adalah bagaimana menentukan event yang harus ditangani lebih lanjut. Saat bekerja dengan windows banyak sekali event yang muncul, namun hanya event tertentu yang harus diproses, yaitu berhubungan dengan aplikasi.

2.5.2 Memahami Objek

Istilah objek telah sedikit berubah sejak diperkenalkan pertama kali dalam pemograman objek. Kata objek sekarang digunakan lebih bebas karena banyak aplikasi yang menggunakan istilah ini untuk menyatakan diri sebagai aplilkasi berorientasi objek.

2.5.3 Pengertian dari Objek

Defenisi dari sebuah objek adalah suatu yang dapat melakukan hal - hal tertentu. Di dalam Visual Basic contoh dari objek misalnya, Command Button, Label, List Box, dan lain - lain. Objek adalah komponen - komponen yang membuat aplikasi.


(26)

2.5.4 Pembuatan Objek

Pemograman Visual merupakan dimensi baru dalam pembuatan aplikasi karena dapat langsung menggambarkan objek - objek ke layar sebelum di eksekusi. Dalam lingkungan pengembangan Visual, sekarang objek yang anda buat dapat langsung ditampilkan dilayar. Objek yang dibuat tersebut akan sama hasilnya pada saat program dijalankan, dengan demikian tidak perlu lagi melakukan pengubahan kode program secara manual. Setelah objek diletakkan dalam form, maka semua atribut objek tersebut akan disimpan sebagai suatu kode program yang dapat langsung dijalankan.

2.5.5 Property

Selain memiliki kemampuan untuk menanggapi Event, objek memiliki property. Dalam property antara lain didapatkan informasi mengenai warna, tinggi, lebar dan posisi sebuah objek. Nilai pada tiap property dapat mempengaruhi cara objek ditampilkan atau cara objek bekerja.

Bagi sebuah objek property mirip dengan variabel lokal dalam prosedur. Property langsung berkaitan dengan objek dan digunakan oleh proses - proses yang digunakan dalam objek.

2.5.6 Event

Semua aplikasi windows memakai metode Event Driven untuk mengelola interaksi antar program dan pemakainya. Semua event yang muncul ditimbulkan oleh pemakai


(27)

12

atau oleh suatu aplikasi dalam sistem windows sendiri. Kebanyakan kode program yang ditulis dalam Visual Basic digunakan untuk menangani event dari pemakai atau dari sistem. Dalam Visual Basic prosedur untuk menangani event disebut sebagai prosedur penanganan event ( Event handle ).

2.5.7 Menjalankan Visual Basic 6.0

Langkah awal dari belajar menjalankan program Visual Basic belajar Visual Basic adalah mengenal IDE ( Intergrated Development Environment ) Visual Basic merupakan lingkungan pengenbangan terpadu bagi programer dalam mengembangkan aplikasinya. Dengan menggunakan IDE, programmer dapat membuat user interface, melakukan kode program, melakukan testing dan debugging, serta mengompilasi program menjadi executable. Penguasaan IDE akan sangat membantu programmer bekerja secara efisien.

Salah satu cara untuk mengaktifkan IDE Visual Basic adalah menjalankannya dari menu Start > Microsoft Visual Studio 6.0 > Microsoft Visual Basic 6.0, akan muncul gambar berikut ini :


(28)

Gambar 2.2 IDE Visual Basic

Sebagai langkah awal dari proses belajar adalah memilih Project Standard EXE. IDE Visual Basic 6.0 menggunakan model MDI (Multiple Document Interface). Tidak semua jendela akan digunakan, tetapi hanya beberapa yang penting, sedangkan yang lainnya bersifat khusus.


(29)

14

Adapun jendela-jendela yang perlu diperhatikan adalah sebagai berikut : 1. Windows Property

Windows property dalam Visual Basic ini merupakan mekanisme normal yang menjelaskan atribut - atribut dari objek. Setiap objek Visual Basic memiliki property tertentu yang settingannya mengontrol tampilan dari objek dalam suatu aplikasi. Beberapa property terbatas pada nilai – nilai tertentu, contohnya Property Visible hanya bisa diatur dengan True atau False saja. Untuk mengaktifkan Windows Property ini dapat dilakukan dengan beberapa cara. Cara yang pertama yaitu pilih menu Views kemudian pilih Sub menu Properties dan cara yang kedua yaitu pilih objek yang akan diatur propertynya kemudian tekan tombol kunci F4 dan cara terakhir yaitu pilih objek yang akan diatur propertynya kemudian tekan tombol kanan mouse, setelah itu pilih property.

Gambar 2.4 Window Properties

2. Windows Form

Sebuah form adalah area tampilan yang berhubungan dengan sebuah jendela yang akan dilihat ketika aplikasi berjalan. Ketika memulai sebuah proyek baru,


(30)

Visual Basic menciptakan sebuah form kosong dan memberinya judul Form1. Pada saat mendesain suatu aplikasi maka form merupakan canvas tempat menggambarkan berbagai bagian aplikasi. Dalam form ini dapat ditempatkan beberapa control untuk keperluan aplikasi. Berikut gambar dari form beserta penjelasannya.

Gambar 2.5 Window Form

3. Windows Project

Pada dasarnya project adalah sekumpulan Form, Module, Class dan file sumber yang membentuk sebuah aplikasi. Jadi windows project merupakan windows yang menampilkan listing semua file pembentuk project. File form berisi deskripsi dari form dan kode - kode yang berhubungan dengannya. Sedangkan modul berisi deklarasi dan prosedur. File class memuat karakteristik - karakteristik tertentu dalam class meliputi property dan metodenya. Dua tombol yang terdapat pada sisi atas windows project digunakan untuk menampilkan Window Form atau View Form dan menampilkan window kodenya ( Tombol View Code ).


(31)

16

Gambar 2.6 Window Project

4. Windows Layout Form

Window layout form adalah tampilan perumpamaan Form di dalam layar, untuk lebih jelasnya lihat gambar dibawah ini :


(32)

5. ToolBar

ToolBar merupakan kumpulan tombol - tombol yang mempunyai tugas untuk pengaksesan terhadap aplikasi yang berada dibawah kendalinya dengan cepat, berikut ini gambar dari ToolBar.

Gambar 2.8 Toolbar

6. ToolBox

Jendela toolbox merupakan jendela yang sangat penting. Dari jendela inilah kita akan memilih kontrol-kontrol (objek, komponen) yang nantinya diperlukan untuk diintegrasikan ke dalam aplikasi kita. Setiap kontrol mewakili fungsi masing-masing. Dibawah ini gambar dari ToolBox :


(33)

18

Keterangan :

1. Pointer bukan merupakan kontrol. Pointer digunakan ketika ingin memilih kontrol yang berada pada form.

2. PictureBox adalah kontrol yang digunakan untuk menampilkan image dalam format BMP, DIB ( bitmap ), ICO ( icon ), CUR ( cursor ), WMF ( metafile ), EMF ( enchanced metafile ), GIF, dan JPEG.

3. Label adalah kontrol yang digunakan untuk menampilkan teks yang tidak dapat diperbaiki oleh pemakai.

4. TextBox adalah kontrol yang mengandung string yang dapat diperbaiki oleh pemakai, bisa berupa satu baris tunggal, atau banyak baris.

5. Frame adalah kontrol yang digunakan sebagai container bagi kontrol lainnya.

6. Command Button merupakan kontrol yang terdapat pada hampir semua form dan digunakan untuk membangkitkan event proses tertentu ketika pemakai melakukan klik padanya

7. CheckBox digunakan untuk opsi yang isinya bernilai Yes/No dan True/False.

8. OptionButton sering digunakan lebih dari satu sebagai pilihan terhadap beberapa opsi yang hanya dapat dipilh satu.

9. ListBox mengandung sejumlah item, dan user dapat memilih lebih dari satu (bergantung pada property MultiSelect).


(34)

10.ComboBox merupakan kombinasi dari TextBox dan suatu ListBox, dimana pemasukan data dapat dilakukan dengan pengetikan maupun pemilihan.

11.HScrollBar dan VScrollBar digunakan untuk membentuk scrollbar yang berdiri sendiri.

12.Timer digunakan untuk memproses background yang diaktifkan berdasarkan interval waktu tertentu yang merupakan kontrol Nonvisual.

13.Shape dan Line digunakan untuk menampilkan bentuk seperti garis, persegi, bulatan, dan oval.

14.Image berfungsi menyerupai image box, tetapi tidak dapat digunakan sebagai container bagi kontrol lainnya. Sesuatu yang perlu diketahui bahwa kontrol image menggunakan resource yang lebih kecil dibandingkan dengan PictureBox

15.Data digunakan untuk data binding.

16.OLE dapat digunakan sebagai tempat bagi program eksternal seperti Microsoft Excel, Word, dan lain-lain.

2.6.Flowchart

Flowchart adalah sekumpulan simbol yang menunjukkan atau menggambarkan rangkaian kegiatan-kegiatan program dari awal hingga akhir, jadi flowchart juga digunakan untuk menggambarkan urutan langkah-langkah pekerjaan di suatu algoritma.


(35)

20

Penjelasan arti dari lambang-lambang flowchart dapat didefinisikan sebagai berikut :


(36)

PERANCANGAN SISTEM

3.1Definisi Perancangan Sistem.

Tahap perancangan sistem atau pendesignan sistem dilakukan setelah tahapan analisa dilakukan, karena analisa telah memberikan gambaran apa yang harus dikerjakan. Menurut seorang ahli :

Robert J, Varzello / John Reute III. Data Processing : System and Concept. (International Student Edition : MC Graw- Hill Kogokasha, 1982) hal. 321.

Perancangan sistem adalah tahap setelah analisis dari siklus pengembangan sistem. Pendefinisian dari kebutuhan-kebutuhan fungsional dan persiapan untuk rancang bangun implementasi menggambarkan bagaimana suatu sistem dibentuk ”. ( MC Graw- Hill Kogokasha, 1982, 321)

3.2Gambaran Umum Sistem Rancangan Simulasi Mesin Jual Otomatis

Rancangan Simulasi Mesin Jual Otomatis merupakan suatu rancangan yang dibuat guna mendefinisikan cara yang tepat agar penggunaannya dipahami oleh pengguna sehingga tidak memerlukan pembimbing dalam penggunaannya. Perancangan sistem ini dibuat dengan menggunakan bahasa pemrograman Visual Basic 6.0 yang memiliki


(37)

22

interface yang lebih bagus dibandingkan dengan bahasa pemrograman lainnya. Perancangan perangkat lunak ini menerapkan teknik untuk membuat suatu Simulasi yang memiliki beberapa fitur dengan penampilan yang sederhana sehingga tidak membingungkan penggunanya. Adapun flowchart rancangan simulasi mesin jual otomatis sebagai berikut ini :


(38)

3.3.Proses Perancangan

3.3.1. Perancangan Simulasi Mesin Jual Otomatis

Perancangan Simulasi Mesin Jual Otomatis menggunakan bahasa pemrograman Visual Basic 6.0 untuk memulai merancang ini sebelumnya telah diinstall terlebih dahulu Software Microsoft Visual Basic 6.0 pada komputer. langkah-langkah perancangan Software Penghitung Zakat adalah sebagai berikut :

1. Bukalah program Visual Basic 6.0 yang ada di program komputer, kemudian Klik Start > All Programs > Microsoft Visual Basic 6.0 > Microsoft Visual Basic 6.0. akan muncul gambar sebagai berikut:


(39)

24

2. Pilih Standard EXE kemudian klik Open Kemudian akan muncul tampilan dibawah ini. Selanjutnya desain form dengan menggunakan toolbox yang ada disebelah kiri form.

Gambar 3.3 Tampilan Lembar Kerja Form Microsoft Visual Basic 6.0

3.3.2. Perancangan Form1 ( Tampilan Depan Mesin Jual Otomatis)

Perancangan Form1 sama dengan perancangan FormMenu merupakan form di mana pengguna akan melihat tampilan depan dari Simulasi Mesin Jual Otomatis. Pembuatan FormMenu bagian depan dari Simulasi Mesin Jual Otomatis ini disimpan dalam satu project kerja Microsoft Visual Basic 6.0. Berikut adalah tampilan dari FormMenu :


(40)

Gambar 3.4 Tampilan FormMenu Mesin Jual Otomatis

3.3.3. Perancangan Form2

Perancangan form2 sama dengan perancangan pada FormMenu, yang membedakan pada form2 adalah transaksi yang merupakan inti dari Mesin Jual Otomatis. Transaksi berfungsi sebagai pendeteksi objek yang digunakan oleh pengguna (konsumen) untuk alat pembelian barang dan sebagai tempat untuk memilih jenis barang yang akan dibeli. Berikut tampilan pada form2 :


(41)

26

3.3.4. Perancangan Form3

Form3 adalah Uang yang merupakan 1 diantara 2 objek yang digunakan sebagai alat transaksi pembelian. Berikut adalah tampilan pada form3 :

Gambar 3.6 Tampilan Form3 Uang

3.3.5. Perancangan Form4

Perancangan form4 adalah barang yang merupakan tempat menampilkan produk yang ingin dijual. Berikut tampilan pada form4 :


(42)

3.3.6. Perancangan ucItem ( UserControl )

Perancangan ucItem adalah alat control yang merupakan pengendali objek dari barang

– barang yang dijual. Berikut adalah tampilan pada ucItem :

Gambar 3.8 Tampilan ucItem

3.3.7 Mengkompile Program

Langkah terakhir dalam pembuatan program aplikasi adalah mengkompile program yang telah penulis buat menjadi program aplikasi berbentuk executable file (file exe). Untuk membuat file exe, ikuti langkah berikut ini:

1. Aktifkan Project (contoh: VendingM.vbp) yang akan dijadikan file exe. 2. Klik menu File – Make VendingM.exe.

3. Selanjutnya tentukan tempat penyimpanan file exe. 4. Beri nama file exe (contoh: VendingM.exe)

5. Klik tombol OK 6. Selesai.


(43)

BAB 4

IMPLEMENTASI SISTEM

4.1.Pengertian Implementasi Sistem

Implementasi merupakan tahap penerapan rancangan yang sudah dibuat kedalam bahasa pemrograman yang digunakan. Dalam tahap ini dilakukan beberapa hal yaitu penulisan program, kompilasi dan membuat program aplikasi yang siap pakai atau excecutable. Sebelum program aplikasi diterapkan, maka program harus ditest untuk menghindari kesalahan - kesalahan yang mungkin terjadi yaitu sebagai berikut :

1. Kesalahan bahasa ( language error ) atau kesalahan penulisan ( syntak error ) adalah penulisan kode sumber program yang tidak sesuai dengan yang telah diisyaratkan. Kesalahan ini mudah ditemukan, karena compiler akan memberitahukan letak kesalahan sewaktu program dikompilasi ( run ).

2. Kesalahan sewaktu proses ( run time errors ) adalah kesalahan yang terjadi sewaktu executable program dijalankan, dimana proses program akan berhenti sebelum selesai pada saatnya, karena compiler menemukan kondisi-kondisi yang belum terpenuhi yang tidak bisa dijalankan.

3. Kesalahan logika ( logical error ) merupakan kesalahan dari logika yang dibuat. Kesalahan ini bahaya karena jika tidak disadari dan tidak ditemukan, maka hasil yang salah menyesatkan bagi yang menggunakannya. Cara mencari kesalahan logika dapat dilakukan dengan test data yaitu dengan menjalankan program


(44)

dengan menggunakan data tertentu dan membandingkan hasil pengolahannya dengan hasil yang sudah diketahui.

4. Kode sumber program ( source code )

Tahap yang dilakukan setelah menganalisis dan mendesain adalah penerapan atau implementasi hasil dari analisa dan desain tersebut kedalam suatu program komputer.

5. Penulisan program

Penulisan program adalah proses menulis instruksi-instruksi program yang mengimplementasikan spesifikasi perancangan program menurut kaidah - kaidah bahasa pemrograman tertentu.

6. Pengujian program

Tahapan terakhir dalam pengembangan program adalah pengujian program, hal ini dilakukan untuk mengetahui apakah program yang dibuat telah sesuai dengan kebutuhan dari dibuatnya program tersebut, atau belum. Beberapa langkah pengujian program sebagai berikut :

a. Kompilasi program, yaitu proses untuk mengidentifikasi kesalahan sintaks yang disebabkan oleh kesalahan pengetikan, inkonsistensi program dan kesalahan tata bahasa pemrograman. Apabila ada kesalahan sistaks maka kesalahan tersebut harus diperbaiki sehingga program tidak memiliki atau kesalahan sintaks.

b. Desk checking, yaitu proses membaca program dan melihat kembali logika program, dilakukan untuk melihat kembali struktur atau penulisan program.


(45)

30

c. Pengujian program, yaitu proses pengujian yang dilakukan untuk mendeteksi kesalahan yang disebabkan penghentian program secara tidak normal, dan kesalahan logika program.

d. Pengujian data, yaitu identifikasi dan penanganan data yang benar dan data yang salah oleh program. Meliputi batasan-batasan dalam program mengenai data yang diijinkan, biasanya dibuat program error handling. e. Link testing, yaitu pengujian program secara keseluruhan.

7. Dokumentasi program adalah penjelasan tertulis tentang program dan cara pengoperasian serta pemeliharaan program. Dokumentasi program sangat membantu dalam melakukan koreksi program dan perubahan atau pengembangan program.

4.2Kebutuhan Sistem

Sarana-sarana pendukung sangat dibutuhkan untuk memperoleh hasil dalam perancangan sistem yang baik. Adapun sarana-sarana pendukung itu yaitu berupa komponen-komponen penting dalam menunjang penerapan system yang telah dirancang. Komponen-komponen tersebut adalah sebagai berikut :

1. Perangkat keras (hardware)

Hardware adalah komponen-komponen yang membentuk suatu sistem komputer yang berhubungan dengan peralatan (komponen) lainnya, sehingga memungkinkan komputer dapat melakukan tugasnya. Umumnya peralatan tersebut terdiri dari tiga jenis perangkat yaitu masukan (input device), perangkat


(46)

pengolahan (processor) dan perangkat keluaran (output device). Adapun hardware yang digunakan penulis dalam merancang system ini adalah :

a. Peralatan input, seperti : mouse, keyboard.

b. Peralatan proses, seperti : Prosesor, RAM 1GB, motherboard, hardidsk 320 GB.

c. Peralatan output, seperti : monitor, printer.

d. Serta peralatan tambahan lainnya, seperti USB Flash. 2. Perangkat Lunak (Software)

Software adalah seluruh fasilitas suatu system pengolahan data yang bukan peralatan komputernya atau merupakan suatu susunan instruksi yang harus diberikan kepada unit pengolahan agar komputer dapat menjalankan pekerjaannya sesuai yang dibutuhkan. Fasilitas software terdiri dari sistem desain, program - program dan prosedur-prosedur. Isoftware yang digunakan antara lain:

a. Sistem Operasi Minimum Microsoft Windows XP dan Maximum Windows 7

b. Microsoft Visual Basic 6.0 sebagai bahasa pemrograman c. Photoshop sebagai perancangan desain.

3. Unsur Manusia (Brainware)

Brainware merupakan aspek manusia yang menangani pengolahan komputer maupun pengembangan, yang termasuk dalam brainware adalah :

a. Analisis Sistem, yaitu orang membentuk dan membangun fasilitas rancangan system atau program.

b. Programmer, yaitu orang yang mengerti bahasa pemrograman yang digunakan dalam membuat dan membangun suatu program.


(47)

32

c. Operator (Administrator), yaitu orang yang mengoperasikan sistem seperti memasukkan data untuk dioperasikan oleh komputer dalam menghasilkan informasi dan lainnya.

d. Public (pengguna), yaitu orang yang memakai sistem yang telah dirancang.

4.3.Pengujian Program

Pengujian program adalah menjalankan dan menjelaskan bagaimana program simulasi Mesin Jual Otomatis yang telah dibuat pada komputer dapat bekerja dengan baik. Untuk menjalankan program simulasi tekan double click pada file MesinJualOtomatis.exe. Karena file tersebut sudah dalam bentuk file exe, sehingga langsung dieksekusi oleh user. Kemudian akan terlihat pada gambar sebagai berikut :


(48)

Dalam hal ini penulis hanya membagi 1 tahapan proses transaksi pembelian yaitu :

4.3.1. Uang Tunai.

Langkah - langkah proses transaksi pembelian menggunakan uang tunai adalah sebagai berikut :

1. Memasukan uang kedalam mesin dan mesin akan membaca jenis transaksi yang digunakan user serta nominalnya seperti terlihat pada gambar berikut ini :


(49)

34

Gambar 4.3 Tampilan Mesin mendeteksi Jenis Transaksi dan Nominalnya.

2. User dapat memilih jenis barang yang ingin dibeli dengan menekan nomor barang pada pendekteksi mesin dan bila barang yang diinginkan melebihi nominal uang yang dimasukkan maka mesin akan memberi peringatan berupa tulisan merah seperti terlihat pada gambar berikut ini :

Gambar 4.4 Tampilan saat user memilih jenis barang dan harga tidak melebihi nominal uang yang dimasukkan.


(50)

Gambar 4.5 Tampilan saat user memilih jenis barang melebihi nominal uang yang dimasukkan

3. Bila harga barang melebih nominal uang yang digunakan maka user bisa melakukan proses pembatalan dan uang keluar dari mesin atau user memasukkan uang lagi kedalam mesin dan mesin kembali mendeteksi nominal uang yang dimasukkan oleh user seperti gambar dibawah ini :


(51)

36

4. Setelah mesin menyatakan uang melebihi dari barang yang ingin dibeli, maka user dapat menekan tombol OK yang telah ditampilkan oleh mesin dan barang yang dibeli keluar dari mesin beserta uang kembaliannya seperti gambar berikut ini :

Gambar 4.7 Tampilan setelah user menekan tombol OK dan barang beserta uang kembalian keluardari mesin.


(52)

KESIMPULAN DAN SARAN

5.1Kesimpulan

Berdasarkan pembahasan pada bab – bab sebelumnya, maka pada bab ini yang merupakan bab terakhir dari tugas akhir ini, penulis akan mencoba menarik kesimpulan dari penguraian tersebut :

1. Telah dibuat suatu perangkat lunak atau program simulasi Mesin Jual Otomatis yang dapat menjelaskan cara kerja mesin tersebut.

2. Simulasi Mesin Jual Otomatis yang dibuat dapat menerima inputan berupa uang kertas pecahan 2000, 5000, 10000 rupiah dan dapat menghasilkan output berupa barang yang dipilih dan sisa atau kembalian uang yang telah dimasukkan kedalam mesin.

3. Dengan adanya program yang telah di buat dan di desain secara sederhana maka dapat memudahkan dan mengurangi kesalahan-kesalahan yang akan dilakukan oleh masyarakat dalam berinterkasi antara manusia dengan mesin jual otomatis yang telah dipasarkan.

4. Program simulasi Mesin Jual Otomatis ini dapat digunakan di komputer mana saja yang memiliki sistem operasi Windows.


(53)

38

5.2Saran

Adapun saran penulis dalam menyelesaikan tugas akhir ini adalah :

1. Perangkat lunak ini dapat dikembangkan dengan menambahkan beberapa fungsi pada programnya agar lebih menarik lagi.

2. Perangkat lunak ini dapat dikembangkan dengan menambahkan sistem

database pada program mengenai transaksi penjualan yang telah dilakukan oleh Mesin Jual Otomatis tersebut.


(54)

Novian.A, Panduan MS. Visual Basic 6, Andi, Yogyakarta, 2004.

Panduan Tata cara Penulisan Skripsi & Tugas Akhir.2010. Dokumen Nomor : Akad/05/2005. Medan : Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

Pardosi, Mico. 2005. Bahasa Pemrograman Windows dan Internet Microsoft Visual basic 6.0. Surabaya: Dua Selaras

P. I. Santosa, Interaksi Manusia dan Komputer Teori dan Praktek, Andi, Yogyakarta, 1997

Ramadhan.A, MS. Visual Basic 6 (Seri Penuntun Praktis), PT. Elex Media Komputindo, Jakarta, 2004.

R. S. Presman, Software Engineering A Practitioner’s Approach Third

Edition, McGraw-Hill Inc., New York ,1992

Supardi.Y, Microsoft Visual Basic 6.0 Untuk Segala Tingkat, PT. Elex Media Komputindo, Jakarta, 2006.

http://www.google.com. Diakses tanggal 28 April dan 15 Mei 2013 http://www.wikipedia.com. Diakses tanggal 03 Mei dan 20 Mei 2013


(55)

LISTING PROGRAM

1. FormMenu Vending Machine

Private Sub Command1_Click()

FormBarang.Image1.Picture = ucItem1(0).Picture FormBarang.Show

End Sub

Private Sub Form_Load()

Dim NewForm As New FormUang Me.Left = 200

Me.Top = (Screen.Height \ 2) - (Me.Height \ 2) 'SedangDiPake = False

CreateUang 2, 5000, Screen.Width - 2000, 6000 CreateUang 3, 10000, Screen.Width - 2000, 6500 CreateUang 2, 2000, Screen.Width - 2000, 7000 TotUangTunai = 0

'FormUang.Show 'newform

End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim LngValReturn As Long If Button = 1 Then

Call ReleaseCapture

LngValReturn = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)

End If End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

LblExit.ForeColor = vbBlack End Sub


(56)

End

'Unload FormTransaksi 'Unload FormMenu 'Unload FormUang End Sub

Private Sub LblExit_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

LblExit.ForeColor = vbRed End Sub

2. Form Transaksi

Private Sub Text1_Change() Dim xi As Integer

For xi = 0 To FormMenu.ucItem1.UBound

If FormMenu.ucItem1(xi).Caption = Text1.Text Then

LHargaBrng.Caption = FormMenu.ucItem1(xi).CaptionHarga LNamaBrng.Caption = FormMenu.ucItem1(xi).CaptionNama If JenisTransaksi = 0 Then

If CLng(LNominal.Text) < CLng(LHargaBrng.Caption) Then LHargaBrng.ForeColor = vbRed

LNominal.ForeColor = vbRed CmdOK.Visible = False IndexItemX = -1

Else

LHargaBrng.ForeColor = &HFF00& LNominal.ForeColor = &HFF00& CmdOK.Visible = True

IndexItemX = xi 'MsgBox IndexItemX Exit Sub

3. Form Uang

Option Explicit

Dim g_nTransparency As Integer Dim ColorX As Long

Dim flag As Byte


(57)

Private Sub Form_Load() g_nTransparency = 255

Me.Left = Screen.Width - (Me.Width + 1000)

Me.Top = (Screen.Height \ 2) - (Me.Height \ 2) + 2000 End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim LngValReturn As Long

If Button = 1 And JenisTransaksi = 0 Then TimerLetak.Enabled = True

Call ReleaseCapture

LngValReturn = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)

If TimerTrns.Enabled = True Then

TimerTrns.Enabled = False TimerLetak.Enabled = False

TampilanTransNormal Me.hwnd

TimerInOut.Enabled = True

Me.Top = (FormMenu.Top + (FormMenu.Image1(9).Top * 15) + 200) Me.Left = (FormMenu.Left + (FormMenu.Image1(9).Left * 15) + 200)

End If End If

End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

TimerLetak.Enabled = False TimerTrns.Enabled = False


(58)

End Sub

Private Sub PicKredit_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Form_MouseUp Button, Shift, X, Y End Sub

Private Sub Label2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Form_MouseDown Button, Shift, X, Y End Sub

Private Sub LValue_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Form_MouseDown Button, Shift, X, Y End Sub

Private Sub PicTunai_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Form_MouseDown Button, Shift, X, Y End Sub

Private Sub PicTunai_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Form_MouseDown Button, Shift, X, Y End Sub

Private Sub TimerInOut_Timer()

If Me.Height > 100 Then FormMenu.Enabled = False PicTunai.Top = PicTunai.Top - 3 Me.Height = Me.Height - 45 Else

'FormUang.Hide

TimerInOut.Enabled = False FormMenu.Enabled = True FormMenu.Show

JenisTransaksi = 0


(59)

FormTransaksi.Show

FormTransaksi.LNominal.Text = TotUangTunai 'StatusTunai = True

'CCreditIn = False Unload Me

End If 'Else

' If FormUang.Height < 1620 Then ' FormUang.Show

' FormMenu.Enabled = False ' PicTunai.Top = PicTunai.Top + 3

' FormUang.Height = FormUang.Height + 45 ' Else

' TimerInOut.Enabled = False ' FormMenu.Enabled = True ' 'FormMenu.Show

' End If 'End If End Sub

Private Sub TimerLetak_Timer() Dim BatasAtas As Long Dim BatasBawah As Long Dim BatasX As Long

BatasAtas = (FormMenu.Top + (FormMenu.Image1(9).Top * 15) - 100) BatasBawah = BatasAtas + ((FormMenu.Image1(9).Height \ 2) * 15) + 100 BatasX = (FormMenu.Left + (FormMenu.Image1(9).Left * 15))

If (Me.Top > BatasAtas And Me.Top < (BatasBawah)) And (Me.Left > BatasX And Me.Left < BatasX + (88 * 15)) Then

TimerTrns.Enabled = True Else

TimerTrns.Enabled = False TampilanTransNormal Me.hwnd End If

End Sub

Private Sub TimerMundur_Timer() If Me.Height < 1620 Then 'FormUang.Show


(60)

TimerMundur.Enabled = False 'FormMenu.Enabled = True 'FormMenu.Show

End If End Sub

Private Sub TimerTrns_Timer()

'ColorX = &HFF00FF '16714752 ' 16583680 '16713728 '16713728 'vbRed 'Me.Point((Me.Width) - 3, (Me.Height) - 3) ' RGB(0, 0, 255)

'cek jika transparansi lebih dari 255, benarkan untuk looping pengurangan transparansi

If g_nTransparency >= 255 Then TambahAlph = False

'cek jika transparansi kurang dari 255, benarkan untuk looping penambahan transparansi

If g_nTransparency <= 75 Then TambahAlph = True

If TambahAlph = False Then g_nTransparency = g_nTransparency - 20 'tambahkan transparansi dengan 20

If TambahAlph = True Then g_nTransparency = g_nTransparency + 20 'kurangkan transparansi dengan 20

'settingan attribut transparansi flag = 0

flag = flag Or LWA_COLORKEY flag = flag Or LWA_ALPHA 'g_nTransparency = 200 '125

SetTranslucent Me.hwnd, vbRed, g_nTransparency, flag 'set transparansi formCard

End Sub

4. Form4 Barang

Private Sub Form_Load()

Me.Top = FormMenu.Top + (FormMenu.PicOut.Top * 15) + 200 Me.Left = FormMenu.Left + (FormMenu.PicOut.Left * 15) + 100 End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)


(61)

Call ReleaseCapture

LngValReturn = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)

End If End Sub

Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Image1_MouseDown Button, Shift, X, Y End Sub

5. ucItem ( UserControl )

'Event Declarations:

Event Click() 'MappingInfo=UserControl,UserControl,-1,Click

Event DblClick() 'MappingInfo=UserControl,UserControl,-1,DblClick Event KeyDown(KeyCode As Integer, Shift As Integer)

'MappingInfo=UserControl,UserControl,-1,KeyDown

Event KeyPress(KeyAscii As Integer) 'MappingInfo=UserControl,UserControl,-1,KeyPress

Event KeyUp(KeyCode As Integer, Shift As Integer) 'MappingInfo=UserControl,UserControl,-1,KeyUp

Event MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseDown

Event MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseMove

Event MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) 'MappingInfo=UserControl,UserControl,-1,MouseUp

Private Sub Image1_Click() End Sub

Private Sub UserControl_Initialize() LNo.Width = UserControl.Width

LNo.Top = UserControl.Height - LNo.Height LNama.Width = UserControl.Width

Image1.Width = UserControl.Width Image1.Top = LNama.Height

Image1.Height = (UserControl.Height - LNama.Height) - LNo.Height LHarga.Left = UserControl.Width - LHarga.Width


(62)

End Property

Public Property Let BackColor(ByVal New_BackColor As OLE_COLOR) UserControl.BackColor() = New_BackColor

PropertyChanged "BackColor" End Property

Public Property Get ForeColor() As OLE_COLOR ForeColor = LNo.ForeColor

End Property

Public Property Let ForeColor(ByVal New_ForeColor As OLE_COLOR) LNo.ForeColor() = New_ForeColor

PropertyChanged "ForeColor" End Property

Public Property Get Enabled() As Boolean Enabled = UserControl.Enabled

End Property

Public Property Let Enabled(ByVal New_Enabled As Boolean) UserControl.Enabled() = New_Enabled

PropertyChanged "Enabled" End Property

Public Property Get Font() As Font Set Font = UserControl.Font End Property

Public Property Set Font(ByVal New_Font As Font) Set UserControl.Font = New_Font

PropertyChanged "Font" End Property

Public Property Get BackStyle() As Integer BackStyle = UserControl.BackStyle End Property

Public Property Let BackStyle(ByVal New_BackStyle As Integer) UserControl.BackStyle() = New_BackStyle

PropertyChanged "BackStyle" End Property

Public Property Get BorderStyle() As Integer BorderStyle = UserControl.BorderStyle End Property


(63)

Public Property Let BorderStyle(ByVal New_BorderStyle As Integer) UserControl.BorderStyle() = New_BorderStyle

PropertyChanged "BorderStyle" End Property

Public Sub Refresh() UserControl.Refresh End Sub

Private Sub UserControl_Click() RaiseEvent Click

End Sub

Private Sub UserControl_DblClick() RaiseEvent DblClick

End Sub

Private Sub UserControl_KeyDown(KeyCode As Integer, Shift As Integer) RaiseEvent KeyDown(KeyCode, Shift)

End Sub

Private Sub UserControl_KeyPress(KeyAscii As Integer) RaiseEvent KeyPress(KeyAscii)

End Sub

Private Sub UserControl_KeyUp(KeyCode As Integer, Shift As Integer) RaiseEvent KeyUp(KeyCode, Shift)

End Sub

Private Sub UserControl_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseDown(Button, Shift, X, Y) End Sub

Private Sub UserControl_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseMove(Button, Shift, X, Y) End Sub

Private Sub UserControl_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseUp(Button, Shift, X, Y) End Sub

Public Property Get Caption() As String Caption = LNo.Caption


(64)

End Property

Private Sub UserControl_InitProperties() Set UserControl.Font = Ambient.Font End Sub

'Load property values from storage

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)

UserControl.BackColor = PropBag.ReadProperty("BackColor", &H8000000F) LNo.ForeColor = PropBag.ReadProperty("ForeColor", &H80000012)

UserControl.Enabled = PropBag.ReadProperty("Enabled", True) Set UserControl.Font = PropBag.ReadProperty("Font", Ambient.Font) UserControl.BackStyle = PropBag.ReadProperty("BackStyle", 1) UserControl.BorderStyle = PropBag.ReadProperty("BorderStyle", 0) LNo.Caption = PropBag.ReadProperty("Caption", "###")

' LNama.Caption = PropBag.ReadProperty("NamaBrng", "Label3") ' LHarga.Caption = PropBag.ReadProperty("HargaBrng", "0")

LNama.Caption = PropBag.ReadProperty("CaptionNama", "Label3") LHarga.Caption = PropBag.ReadProperty("CaptionHarga", "0") 'Set Picture = PropBag.ReadProperty("Picture", Nothing) Set Picture = PropBag.ReadProperty("Picture", Nothing) End Sub

Private Sub UserControl_Resize() UserControl_Initialize

End Sub

'Write property values to storage

Private Sub UserControl_WriteProperties(PropBag As PropertyBag) Call PropBag.WriteProperty("BackColor", UserControl.BackColor, &H8000000F)

Call PropBag.WriteProperty("ForeColor", LNo.ForeColor, &H80000012) Call PropBag.WriteProperty("Enabled", UserControl.Enabled, True) Call PropBag.WriteProperty("Font", UserControl.Font, Ambient.Font) Call PropBag.WriteProperty("BackStyle", UserControl.BackStyle, 1) Call PropBag.WriteProperty("BorderStyle", UserControl.BorderStyle, 0) Call PropBag.WriteProperty("Caption", LNo.Caption, "###")

' Call PropBag.WriteProperty("NamaBrng", LNama.Caption, "Label3") ' Call PropBag.WriteProperty("HargaBrng", LHarga.Caption, "0")

Call PropBag.WriteProperty("CaptionNama", LNama.Caption, "Label3") Call PropBag.WriteProperty("CaptionHarga", LHarga.Caption, "0") Call PropBag.WriteProperty("Picture", Picture, Nothing)

Call PropBag.WriteProperty("Picture", Picture, Nothing) End Sub


(65)

Public Property Get CaptionNama() As String CaptionNama = LNama.Caption

End Property

Public Property Let CaptionNama(ByVal New_CaptionNama As String) LNama.Caption() = New_CaptionNama

PropertyChanged "CaptionNama" End Property

Public Property Get CaptionHarga() As String CaptionHarga = LHarga.Caption

End Property

Public Property Let CaptionHarga(ByVal New_CaptionHarga As String) LHarga.Caption() = New_CaptionHarga

PropertyChanged "CaptionHarga" End Property

Public Property Get Picture() As Picture Set Picture = Image1.Picture

End Property

Public Property Set Picture(ByVal New_Picture As Picture) Set Image1.Picture = New_Picture

PropertyChanged "Picture" End Property

6. Module_General ( Module_General.bas )

Option Explicit

Public Const HTCAPTION = 2

Public Const WM_NCLBUTTONDOWN = &HA1

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long

Public Declare Function ReleaseCapture Lib "user32" () As Long Public SedangDiPake As Boolean

Public JenisTransaksi As Integer Public TotUangTunai As Long

Sub CreatePecahanUang(ByVal PecahanUang As Long, ByVal TotalUang As Long, ByVal X As Long, ByVal Y As Long)

Dim TmpUT As Integer


(66)

Sub CreateUang(ByVal JumlahUT As Integer, ByVal NilaiNya As Long, ByVal Letak_X As Long, ByVal Letak_Y As Long)

Dim xi As Integer

Dim NewForm As New FormUang

For xi = 1 To JumlahUT

'LetakTimbul = LetakTimbul + 300 Set NewForm = New FormUang NewForm.LValue = NilaiNya NewForm.Top = Letak_Y NewForm.Left = Letak_X NewForm.Height = 100

NewForm.PicTunai.Top = -(NewForm.PicTunai.Height) NewForm.Show

NewForm.TimerMundur.Enabled = True

Do While NewForm.TimerMundur.Enabled = True DoEvents

Loop

Set NewForm = Nothing 'MsgBox Nominalnya, , xi Next

End Sub

7. Module_TransparentLayer ( Module_TransparentLayer.bas )

Option Explicit

Public Const LWA_COLORKEY = 1 Public Const LWA_ALPHA = 2 Public Const LWA_BOTH = 3

Public Const WS_EX_LAYERED = &H80000 Public Const GWL_EXSTYLE = -20

Public Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal color As Long, ByVal X As Byte, ByVal alpha As Long) As Boolean

Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Public Declare Function GetWindowLong Lib "user32" Alias

"GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Dim g_nTransparency As Integer Dim ColorX As Long


(67)

Dim flag As Byte

Sub SetTranslucent(ThehWnd As Long, color As Long, nTrans As Integer, flag As Byte)

On Error GoTo ErrorRtn

'SetWindowLong and SetLayeredWindowAttributes are API functions, see MSDN for details

Dim attrib As Long

attrib = GetWindowLong(ThehWnd, GWL_EXSTYLE)

SetWindowLong ThehWnd, GWL_EXSTYLE, attrib Or WS_EX_LAYERED 'anything with color value color will completely disappear if flag = 1 or flag = 3 SetLayeredWindowAttributes ThehWnd, color, nTrans, flag

Exit Sub ErrorRtn:

'MsgBox Err.Description & " Source : " & Err.Source

End Sub

Sub TampilanTransNormal(ByVal TheObject As Long) 'fungsi untuk membuat tampilan form normal

'buat settingan attribute untuk transparansi flag = 0

flag = flag Or LWA_COLORKEY flag = flag Or LWA_ALPHA g_nTransparency = 255

SetTranslucent TheObject, vbRed, g_nTransparency, flag 'buat tampilan kartu kredit normal

End Sub


(1)

Public Property Get BackColor() As OLE_COLOR BackColor = UserControl.BackColor

End Property

Public Property Let BackColor(ByVal New_BackColor As OLE_COLOR) UserControl.BackColor() = New_BackColor

PropertyChanged "BackColor" End Property

Public Property Get ForeColor() As OLE_COLOR ForeColor = LNo.ForeColor

End Property

Public Property Let ForeColor(ByVal New_ForeColor As OLE_COLOR) LNo.ForeColor() = New_ForeColor

PropertyChanged "ForeColor" End Property

Public Property Get Enabled() As Boolean Enabled = UserControl.Enabled

End Property

Public Property Let Enabled(ByVal New_Enabled As Boolean) UserControl.Enabled() = New_Enabled

PropertyChanged "Enabled" End Property

Public Property Get Font() As Font Set Font = UserControl.Font End Property

Public Property Set Font(ByVal New_Font As Font) Set UserControl.Font = New_Font

PropertyChanged "Font" End Property

Public Property Get BackStyle() As Integer BackStyle = UserControl.BackStyle End Property

Public Property Let BackStyle(ByVal New_BackStyle As Integer) UserControl.BackStyle() = New_BackStyle

PropertyChanged "BackStyle" End Property

Public Property Get BorderStyle() As Integer BorderStyle = UserControl.BorderStyle End Property


(2)

Public Property Let BorderStyle(ByVal New_BorderStyle As Integer) UserControl.BorderStyle() = New_BorderStyle

PropertyChanged "BorderStyle" End Property

Public Sub Refresh() UserControl.Refresh End Sub

Private Sub UserControl_Click() RaiseEvent Click

End Sub

Private Sub UserControl_DblClick() RaiseEvent DblClick

End Sub

Private Sub UserControl_KeyDown(KeyCode As Integer, Shift As Integer) RaiseEvent KeyDown(KeyCode, Shift)

End Sub

Private Sub UserControl_KeyPress(KeyAscii As Integer) RaiseEvent KeyPress(KeyAscii)

End Sub

Private Sub UserControl_KeyUp(KeyCode As Integer, Shift As Integer) RaiseEvent KeyUp(KeyCode, Shift)

End Sub

Private Sub UserControl_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseDown(Button, Shift, X, Y) End Sub

Private Sub UserControl_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseMove(Button, Shift, X, Y) End Sub

Private Sub UserControl_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

RaiseEvent MouseUp(Button, Shift, X, Y) End Sub

Public Property Get Caption() As String Caption = LNo.Caption


(3)

Public Property Let Caption(ByVal New_Caption As String) LNo.Caption() = New_Caption

PropertyChanged "Caption" End Property

Private Sub UserControl_InitProperties() Set UserControl.Font = Ambient.Font End Sub

'Load property values from storage

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)

UserControl.BackColor = PropBag.ReadProperty("BackColor", &H8000000F) LNo.ForeColor = PropBag.ReadProperty("ForeColor", &H80000012)

UserControl.Enabled = PropBag.ReadProperty("Enabled", True) Set UserControl.Font = PropBag.ReadProperty("Font", Ambient.Font) UserControl.BackStyle = PropBag.ReadProperty("BackStyle", 1) UserControl.BorderStyle = PropBag.ReadProperty("BorderStyle", 0) LNo.Caption = PropBag.ReadProperty("Caption", "###")

' LNama.Caption = PropBag.ReadProperty("NamaBrng", "Label3") ' LHarga.Caption = PropBag.ReadProperty("HargaBrng", "0")

LNama.Caption = PropBag.ReadProperty("CaptionNama", "Label3") LHarga.Caption = PropBag.ReadProperty("CaptionHarga", "0") 'Set Picture = PropBag.ReadProperty("Picture", Nothing) Set Picture = PropBag.ReadProperty("Picture", Nothing) End Sub

Private Sub UserControl_Resize() UserControl_Initialize

End Sub

'Write property values to storage

Private Sub UserControl_WriteProperties(PropBag As PropertyBag) Call PropBag.WriteProperty("BackColor", UserControl.BackColor, &H8000000F)

Call PropBag.WriteProperty("ForeColor", LNo.ForeColor, &H80000012) Call PropBag.WriteProperty("Enabled", UserControl.Enabled, True) Call PropBag.WriteProperty("Font", UserControl.Font, Ambient.Font) Call PropBag.WriteProperty("BackStyle", UserControl.BackStyle, 1) Call PropBag.WriteProperty("BorderStyle", UserControl.BorderStyle, 0) Call PropBag.WriteProperty("Caption", LNo.Caption, "###")

' Call PropBag.WriteProperty("NamaBrng", LNama.Caption, "Label3") ' Call PropBag.WriteProperty("HargaBrng", LHarga.Caption, "0")

Call PropBag.WriteProperty("CaptionNama", LNama.Caption, "Label3") Call PropBag.WriteProperty("CaptionHarga", LHarga.Caption, "0") Call PropBag.WriteProperty("Picture", Picture, Nothing)

Call PropBag.WriteProperty("Picture", Picture, Nothing) End Sub


(4)

Public Property Get CaptionNama() As String CaptionNama = LNama.Caption

End Property

Public Property Let CaptionNama(ByVal New_CaptionNama As String) LNama.Caption() = New_CaptionNama

PropertyChanged "CaptionNama" End Property

Public Property Get CaptionHarga() As String CaptionHarga = LHarga.Caption

End Property

Public Property Let CaptionHarga(ByVal New_CaptionHarga As String) LHarga.Caption() = New_CaptionHarga

PropertyChanged "CaptionHarga" End Property

Public Property Get Picture() As Picture Set Picture = Image1.Picture

End Property

Public Property Set Picture(ByVal New_Picture As Picture) Set Image1.Picture = New_Picture

PropertyChanged "Picture" End Property

6. Module_General ( Module_General.bas ) Option Explicit

Public Const HTCAPTION = 2

Public Const WM_NCLBUTTONDOWN = &HA1

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long

Public Declare Function ReleaseCapture Lib "user32" () As Long Public SedangDiPake As Boolean

Public JenisTransaksi As Integer Public TotUangTunai As Long

Sub CreatePecahanUang(ByVal PecahanUang As Long, ByVal TotalUang As Long, ByVal X As Long, ByVal Y As Long)

Dim TmpUT As Integer


(5)

'MsgBox TmpUT, , PecahanUang & " " & TotalUang CreateUang TmpUT, PecahanUang, X, Y

End Sub

Sub CreateUang(ByVal JumlahUT As Integer, ByVal NilaiNya As Long, ByVal Letak_X As Long, ByVal Letak_Y As Long)

Dim xi As Integer

Dim NewForm As New FormUang

For xi = 1 To JumlahUT

'LetakTimbul = LetakTimbul + 300 Set NewForm = New FormUang NewForm.LValue = NilaiNya NewForm.Top = Letak_Y NewForm.Left = Letak_X NewForm.Height = 100

NewForm.PicTunai.Top = -(NewForm.PicTunai.Height) NewForm.Show

NewForm.TimerMundur.Enabled = True

Do While NewForm.TimerMundur.Enabled = True DoEvents

Loop

Set NewForm = Nothing 'MsgBox Nominalnya, , xi Next

End Sub

7. Module_TransparentLayer ( Module_TransparentLayer.bas ) Option Explicit

Public Const LWA_COLORKEY = 1 Public Const LWA_ALPHA = 2 Public Const LWA_BOTH = 3

Public Const WS_EX_LAYERED = &H80000 Public Const GWL_EXSTYLE = -20

Public Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal color As Long, ByVal X As Byte, ByVal alpha As Long) As Boolean

Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Public Declare Function GetWindowLong Lib "user32" Alias

"GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Dim g_nTransparency As Integer Dim ColorX As Long


(6)

Dim flag As Byte

Sub SetTranslucent(ThehWnd As Long, color As Long, nTrans As Integer, flag As Byte)

On Error GoTo ErrorRtn

'SetWindowLong and SetLayeredWindowAttributes are API functions, see MSDN for details

Dim attrib As Long

attrib = GetWindowLong(ThehWnd, GWL_EXSTYLE)

SetWindowLong ThehWnd, GWL_EXSTYLE, attrib Or WS_EX_LAYERED 'anything with color value color will completely disappear if flag = 1 or flag = 3 SetLayeredWindowAttributes ThehWnd, color, nTrans, flag

Exit Sub ErrorRtn:

'MsgBox Err.Description & " Source : " & Err.Source

End Sub

Sub TampilanTransNormal(ByVal TheObject As Long) 'fungsi untuk membuat tampilan form normal

'buat settingan attribute untuk transparansi flag = 0

flag = flag Or LWA_COLORKEY flag = flag Or LWA_ALPHA g_nTransparency = 255

SetTranslucent TheObject, vbRed, g_nTransparency, flag 'buat tampilan kartu kredit normal

End Sub