APLIKASI MINI PIANO MENGGUNAKAN
MICROSOFT VISUAL BASIC 6.0
TUGAS AKHIR
DIAN MARIANA SILAEN
102406041
D3 TEKNIK INFORMATIKAFAKULTAS MATEMATIKA DAN
ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul : APLIKASI MINI PIANO MENGGUNAKAN
MICROSOFT VISUAL BASIC 6.0
Kategori : TUGAS AKHIR
Nama : DIAN MARIANA SILAEN
Nomor Induk Mahasiswa : 102406041
Program Studi : DIPLOMA (D3) TEKNIK INFORMATIKA
Departemen : MATEMATIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juli 2013
Diketahui/Disetujui oleh
Departemen Matematika FMIPA USU
Ketua Pembimbing
PERNYATAAN
APLIKASI MINI PIANO MENGGUNAKAN MICROSOFT VISUAL BASIC 6.0
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juli 2013
PENGHARGAAN
Segala puji dan syukur penulis ucapkan kepada Tuhan Yesus Kristus oleh karena anugerah dan kasihNya yang telah memberikan kemampuan, kebijaksanaan dan kesehatan sehingga penulis dapat menyelesaikan tugas akhir ini.
Adapun judul dari tugas akhir ini adalah ”APLIKASI MINI PIANO MENGGUNAKAN MICROSOFT VISUAL BASIC 6.0”
Penulis sepenuhnya menyadari bahwa penyelesaian Tugas Akhir ini akan terwujud tanpa adanya dukungan dan bantuan berbagai pihak. Penulis mengucapkan terima kasih dan penghargaan yang setinggi-tingginya kepada :
1. Bapak Drs. Gim Tarigan M.Si selaku Dosen Pembimbing Tugas Akhir yang telah memberikan bimbingan dan arahan selama ini kepada senulis dalam menyelesaikan tuga akhir ini.
2. Bapak Prof. Dr. Tulus Vordipl. Math., M.Si., Ph.Dselaku Ketua Departemen Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
3. Bapak Syahriol Sitorus, S.Si. MIT selaku Ketua Program Studi D3 Teknik Informatika.
4. Ayahanda Akp. MP. Silaen, Ibunda KG. Siagian, abang Santoso Silaen, kak Basaria Silaen, abang Agus Sirait, Adik Handoko Silaen, Adik Theresia Silaen terima kasih atas kasih sayang, semangat, doa, inspirasi dan dukungan baik secara material maupun spiritual.
5. Seluruh dosen pengajar Program Studi D3 Teknik Informatika Fakultas MIPA Universitas Sumatera Utara yang telah memberikan ilmu yang bermanfaat kepada penulis selama masa perkuliahan.
Student Influencer (CMSI) dan seluruh staf LPMI WIB, terima kasih atas dukungan doa dan semangatnya.
7. Sahabat-sahabatku terkasih DBC yaitu Maria M. Sinaga, Desi Triyani kaban, Dewi Anastasia Pandiangan, Nova Esterina Silitonga dan Arshita Febrina Silalahi. Terima kasih buat setiap kebersamaan, saling memotivasi, saling mendukung yang telah kita jalani bersama.
8. Seluruh staf pegawai administrasi Departemen Matematika yang telah membantu penulis selama pekuliahan dalam menyelesaikan segala kelengkapan administrasi. 9. Rekan-rekan seangkatan D3 Teknik Informatika stambuk 2010, terkhusus KOM
C’10.
APLIKASI MINI PIANO MENGGUNAKAN MICROSOFT VISUAL BASIC 6.0
ABSTRAK
DAFTAR ISI
Daftar Gambar viii
Bab 1. Pendahuluan
2.5 Menjalankan Microsoft Visual Basic 6.0 14
2.6 Flowchart 21
Bab 3. Perancangan Sistem
3.1 Gambaran Umum Sistem Perancangan 23
3.2 Perancangan Mini Piano 24
3.3 Mebuat Antarmuka 24
3.4 Flowchart 33
Bab 4. Implementasi Sistem
4.1 Implementasi Sistem 34
4.2 Kebutuhan Sistem 36
4.3 Prosedur Penggunaan Program 38
Bab 5. Kesimpulan dan Saran
5.1 Kesimpulan 40
5.2 Saran 40
Daftar Pustaka
DAFTAR TABEL
DAFTAR GAMBAR
Halaman
Gambar 2.1 IDE Visual Basic 15
Gambar 2.2 Tampilan Awal Standard EXE 15
Gambar 2.3 Windows Properties 16
Gambar 2.4 Windows Form 17
Gambar 2.5 Windows Project 18
Gambar 2.6 ToolBar 18
Gambar 2.7 ToolBox 19
Gambar 3.1 Membuat Form Baru 24
Gambar 3.2 Flowchart Mini Piano 33
APLIKASI MINI PIANO MENGGUNAKAN MICROSOFT VISUAL BASIC 6.0
ABSTRAK
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Piano berasal dari kata pianoforte yang diambil dari bahasa Italia. seorang bernama Bartolomeo Cristofori pada tahun 1720-an membuat sebuah piano. Model tradisional pertama kali diciptakan pada tahun 1709. dengan nama “gravicembalo col pian e forte” dalam bahasa Italia (“harpsichord with soft and loud”), yang kira-kira berarti Alat Musik Hapsichord (yang bisa dimainkan ) dengan lembut dan keras. Prinsip kerja alat musik ini diambil dari prinsip kerja bilah kunci harpsichord and clavichord dikombinasikan dengan pemukul dan string dari alat musik “dulcimer”. Alat ini pertama kali diciptakan oleh Bartolomeo Cristofori, seorang pembuat harpsichord dari Italia.
Pada awalnya, piano dikembangkan dari alat musik kecapi, namun perbedaannya terletak pada cara bermainnya. Kecapi dimainkan dengan dipetik, sedangkan piano dimainkan dengan cara menekan tuts-tuts nya.
Alat musik piano kini mulai dikenal di berbagai macam kalangan, dari berbagai tingkat kesejahteraan. Piano kini dikenal sebagai alat musik yang selalu hadir di setiap pertunjukan music popular Maupun klasik, di televisi maupun konser-konser off air yang diselenggarakan di berbagai kota. Hal ini menandakan bahwa piano sudah tidak dipandang lagi sebagai alat musik ekslusif hanya untuk kalangan atas saja. Piano memiliki wilayah nada yang luas,sehingga pemain piano bisa memainkan lagu dengan berbagai macam unsur di dalamnya, yaitu bass, rhythm dan melodi secara lengkap dan bersamaan. Seiring dengan ketenaran alat musik ditengah-tengah masyarakat khususnya dikalangan siswa dan mahasiswa, maka penulis tertarik membuat aplikasi Mini Piano yang bias dimainkan menggunakan komputer. Karena perkembangan computer pada masa sekarang ini sangat pesat ditengah-tengah masyarakat khususnya pada pendidikan.
Sekarang peran lain dari komputer yaitu bisa dijadikan sebagai alat musik yaitu Mini Piano. Aplikasi Mini Piano merupakan program yang digunakan untuk bermain piano. Mini Piano ini terdiri dari tuts-tuts yang berwarna hitam dan putih, dan nada-nada yang berirama, saat kita menekan keyboard computer sesuai dengan petunjuk di tuts-tuts piano, maka piano akan mengeluarkan suara sesuai nada solmisasi. Masyarakat terkhususnya siswa dan mahasiswa banyak yang hobi bermain piano tapi terkadang mereka tidak bisa bermain piano karena piano mahal.
Untuk mengatasi masalah tersebut, penulis membuat sebuah “Aplikasi Mini Piano menggunakan Microsoft Visual Basic 6.0”, supaya siswa dan mahasiswa bias bermain piano menggunakan computer atau laptop sehingga tidak perlu membeli alat music piano yang mahal, cukup menggunakan Aplikasi Mini Piano ini apalagi dalam proses pembelajaran.
1.2 Rumusan Masalah
1.3 Batasan Masalah
Agar pembahasan masalah tidak menyimpang dari tujuan penelitian, maka berikut adalah beberapa batasan yang perlu dibuat, yaitu :
1. Aplikasi ini di operasikan dalam system operasi windows. 2. Membuat Mini piano dengan desain yang menarik.
3. Pada Mini Piano ada beberapa jenis suara dan tangga oktaf.
4. Software yang digunakan untuk merancang Mini Piano ini adalah Microsoft Visual Basic 6.0.
1.4 Tujuan Perancangan
Tujuan penulis merancang Mini Piano ini adalah untuk memberikan kemudahan dalam bermain piano sehingga tidak perlu membeli alat musik piano yang mahal, cukup menggunakan mini piano ini apalagi untuk proses pembelajaran.
1. Bagi Mahasiswa
Mempermudah mahasiswa yang menyukai alat musik piano bisa bermain piano disela-sela waktunya saat mengerjakan tugas dilaptopnya.
2. Bagi Siswa
3. Bagi Kalangan Umum
Aplikasi ini dapat dijadikan sebagai hiburan yang dimainkan dalam komputer.
1.5 Metodologi Penelitian
Adapun metodologi penelitian yang dibuat dalam penyusunan tugas akhir ini adalah sebagai berikut:
1. Penelitian Pustaka
Penelitian yang dilakukan penulis diperpustakaan untuk mendapatkan data yang teoritis. Dalam hal ini yang harus diperhatikan adalah subjek yang diteliti, yaitu pada buku bacaan yang membahas tentang pemrograman visual basic. Pada bagian ini, terdapat berbagai informasi kepustakaan, tidak terbatas pada buku tapi juga pada kepustakaan digital seperti suara, gambar dan sebagainya.
2. Pengumpulan Data
Pada bagian ini setelah melakukan metode kepustakaan kemudian dilakukan pengumpulan data yang akan digunakan sebagai sumber dalam pembuatan Mini Piano. Metode pengumpulan data yang dilakukan meliputi pencarian di website dan studi pustaka, mencari buku yang berhubungan dengan masalah penulis.
Kemudian tahap selanjutnya adalah analisis dan perancangan yaitu bagaimana mini piano dimainkan, dan merancang sistem yang digunakan dalam Mini Piano, desaininterface, interaksinya dengan pengguna dan sebagainya. Metode perancangan yang digunakan adalah waterfall yang singkat memiliki tahap analisis, desain,implementasi dan testing.
4. Implementasi dan Evaluasi
Setelah analisis dan perancangan, maka perlu dilakukan implementasi atau uji coba Mini Piano kemudian evaluasi dilakukan untuk pengembangan atau perbaikan dalam pembuatan Mini Piano bila masih ditemukan kekurangan.
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini dibagi menjadi 5 (lima) bab yaitu sebagai berikut :
BAB 1 PENDAHULUAN
Bab ini berisikan tentang latar belakang permasalahan, identifikasi masalah, batasan masalah, tujuan penulisan, kontribusi penelitian, dan sitematika penulisan daari tugas akhir.
BAB 2 LANDASAN TEORI
BAB 3 PERANCANGAN SISTEM
Bab ini membahas tentang perancangan dan pembuatan Mini Piano dan gambaran umum rancangan.
BAB 4 IMPLEMENTASI SISTEM
Bab ini membahas analisa hasil dan pembahasan Mini Piano yang dirancang, pembuatan program yang diajukan, tampilan dari program dan pengujian Mini Piano.
BAB 5 KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
2.1 Pengertian Perangkat Lunak
Perangkat lunak adalah Perintah ( program computer ) yang bila di eksekusi 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. Tidak ada lagi definisi yang dan kegunaan program. ( Perssman, 2002 )
2.2 Pengertian 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 sintaks yaitu aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan peryataan. 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.3 Proses Perangkat Lunak
perangkat lunak Model Air Terjun, Roger S Pressman, . “Software Engineering A
Practitioner’s Approach, McGraw-Hill”)
Kegiatan-kegiatan mendasar yg umum bagi semua proses Perangkat Lunak :
1. Spesifikasi Perangkat Lunak Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
2. Pengembangan (Perancangan dan Implementasi) Perangkat Lunak Perangkat lunak yang memenuhi spesifikasi harus di produksi.
3. Validasi Perangkat Lunak Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak bekerja sesuai dengan apa yang diinginkan oleh pelanggan.
Definisi dan Analisis kebutuhan
Integarasi dan Sistem Testing
Implementasi dan Unit Testing
4. Evolusi Perangkat Lunak Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan.
2.4 Mengenal Microsoft 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 berakaitan erat dengan windows itu sendiri sehingga dibutuhkan pengetahuan bagaimana cara kerja windows.
Dalam pemrograman Visual banyak istilah dan konsep untuk menyebuit seusatu yang membentuk sebuah aplikasi. Istilah-istilah tersebut memiliki arti yang sama dalam lingkungan pemrograman visual lainnya, seperti misalnya Objek, Property, dan Event.
2.4.1 Pemrograman Event Driven
metode ini biasanya memiliki menu kompleks yang tergabung erat pada proses yang ada dalam program.
Pemrograman Event Driven tidak mencoba menggantikan pemrograman procedural, namun melengkapi dengan kerangka yang dapat membedakan antara user interface dan proses tertentu dalam aplikasi. Visual Basic dan aplikasi Event Driven lainnya menyediakan keranghka tersebut sehingga programmer lebih terkonsentrasi pada masalah aplikasinya.
Kunci pokok dalam Even Driven adalah bagaimana menentukan event yang harus ditangani lebih lanjut. Saat bekerja dengan windows banyak sekali event yang muncul, namun hanya event tertentu uyang harus diproses, yaitu berhubungan dengan aplikasi.
2.4.2 Memahami Objek
2.4.3 Pengertian dari Objek
Definisi 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.
2.4.4 Pembuatan Objek
Pemrograman Visual merupakan dimensi baru dalam pembuatan aplikasi karena dapat langsung menggambarkan objek-objek ke layar sebelum di eksekusi. Dalam 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 diletakan dalam form, maka semua atribut objek tersebut akan disimpan sebagai suatu kode program yang dapat langsung dijalankan.
2.4.5 Property
Bagi sebuah objek property mirip dengan variable local dalam prosedur. Property langsung berkaitan dengan objek dan digunakan oleh proses-proses yang digunakan dalam objek.
2.4.6 Event
Semua aplikasi windows memakai metode Event Driven untuk mengelola interaksi antar program dan pemakainya. Semua event yang muncul ditimbulkan oleh pemakai 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 penanganan event ( Event handle ).
2.5 Menjalankan Microsoft Visual Basic
Salah satu cara untuk mengaktifkan IDE Microsoft Visual Basic adalah menjalankannya dari menu Start > Microsoft Visual Studio > Microsoft Visual Basic 6.0.
Gambar 2.1 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.
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 propertyVisible 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 yang terakhir yaitu pilih objek yang akan diatur propertynya kemudian tekan tombol kanan mouse, setelah itu pilih property.
2. Windows Form
Sebuah form adalah adalah area yang berhubungan dengtan sebuah jendela yang akan dilihat ketika aplikasi berjalan. Ketika memulai sebuah proyek baru, Visual Basic menciptakan sebuat 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 kontrol untuk keperluan aplikasi. Berikut gambar dari form beserta penjelasannya.
Control Menu Caption atau judul Form Tombol Minimize
Form Area Tombol Maximize dan Close
Gambar 2.4 Windows Form
3. Windows Project
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 windows Form atau ViewForm dan menampilkan windows kodenya ( Tombol View Code ).
Gambar 2.5 Windows Project
4. ToolBar
ToolBar merupakan kumpulan tombol-tombol yang mempunyai tugas untuk pengaksesan terhadap aplikasi yang berada dibawah kendalinya dengan cepat, berikut ini gambar dari ToolBar.
5. 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 :
Gambar 2.7 ToolBox
Keterangan :
1. Pointer bukan merupakan control. Pointer digunakan ketika ingin memilih control yang berada pada form.
2. PictureBox adalah control yang digunakan untuk menampilkan image dalam format BMP, DIB ( bitmap ), ICO (icon), CUR ( cursor ), WMF ( metafile ), EMF ( enchanced metafile ), GIF, dan JPEG.
4. TextBox adalah control yang mengandung string yang dapat diperbaiki oleh pemakai, bisa berupa satu baris tunggal, atau banyak baris.
5. Frame adalah control yang digunakan sebagai container bagi control lainnya. 6. Command Button merupakan control 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 dipilih satu.
9. ListBox mengandung sejumlah item, dan user dapat memilih lebih dari satu (bergantung pada property multiselect).
10.ComboBox merupakan kombinasi dari textbox dan suatu listbox, dimana pemasukkan data dapat dilakukan dengan pengetikan maupun pemilihan.
11.HScrollBar dan VScrollBar digunakan untuk membentuk scrollbar yang berdiri sendiri.
12.Timer digunakan nuntuk memproses background yang diaktifkan berdasarkan interval waktu tertentu yang merupakan kontrol Nonvisual.
13.DriveListBox, DirListBox, dan FileListBox sering digunakan untuk membentuk dialog box yang berkaitan dengan file.
14.Shape dan line digunakan untuk menampilkan bentuk seperti garis, persegi, bulatan, dan oval.
17.OLE dapat digunakan sebagai tempat bagi program, eksternal seperti Microsoft Excel, Word, an lain-lain.
2.6 Flowchart
Flowchart adalah sekumpulan symbol 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. Penjelasan arti lambing-lambang flowchart dapat didefinisikan sebagai berikut :
Tabel 2.1 Simbol-Simbol Flowchart
No Simbol Fungsi
1 Terminator, untuk memulai dan mengakhiri program.
2 Process, suatu simbol yang menunjukkan setiap pengolahan yang dilakukan oleh komputer.
3 Data, untuk memasukkan data maupun
menunjukkan hasil dari suatu proses.
5 Preparation, suatu symbol untuk menyediakan tempat-tempat pengolahan data dalam storage.
6 Connector, adalah symbol untuk masuk dan keluarnya suatu prosedur pada lembar kerja yang sama
7 Off-page Connector, merupakan simbol untuk masuk dan keluarnya suatu prosedur pada lembar kertas lain.
8 Ars atau flow, prosedur yang dapat dilakukan dari atas ke bawah, bawah ke atas, dari kiri ke kanan, atau dari kana ke kiri.
9 Document, merupakan symbol untuk data yang berbentuk informasi.
10 Predefined Process, untuk menyatakan sekumpulan langkah proses yang ditulis sebagai prosedur.
11 Display, untuk output yang ditunjukkan suatu device, seperti monitor.
BAB 3
PERANCANGAN SISTEM
3.1 Gambaran Umum Sistem Perancangan
Secara umum perancangan sistem ini adalah untuk membuat sebuah Aplikasi Mini Piano menggunakan Microsoft Visual Basic 6.0 untuk bermain musik melalui komputer.
Desain yang userfriendly sangat diperlukan oleh semua aplikasi. Program aplikasi ini dikemas secara userfriendly baik desain tampilan warnannya maupun letak tool-tool aplikasi ini. Diharapkan user dapat menggunakan aplikasi ini dengan mudah, cepat serta dapat membuat user betah berlama-lama di depan aplikasi.
Perancangan sistem merupakan pemaparan tentang program yuang telah dibuat agar program lebih mudah dimengerti. Desain yang userfriendly membuat user betah berlama-lama menggunakan aplikasi, kesesuaian tampilan yang diharapkan juga dapat mempermudah user untuk menggunakan sebuah aplikasi yang masih baru dikenalnya. Program ini diharapkan mudah dipergunakan oleh berbagai kalangan.
3.2 Perancangan Mini Piano
Untuk mempermudah dan memperlancar pembuatan Mini Piano, hal yang harus diperhatikan dan perlu diperisapkan sebelum membuat Mini Piano antara lain :
1. Membuat satu folder khusus untuk memuat semua file atau folder lain yang mendukung Aplikasi Mini Piano.
2. Membuat form tampilan Aplikasi Mini Piano.
3.3Membuat Antarmuka
Adapun langkah-langkah untuk mebuat antarmuka menu utama adalah sebagai berikut :
1. Buka program Visual Basic 6.0, dengan cara menekan Start > Microsoft Visual Basic 6.0.
2. Akan tampil kotak dialog New Project, pilih Standard EXE, tekan tombol Ok.
Pilih Standard EXE Tekan Ok
3. Setelah Itu, lakukan pengaturan properties untuk komponen-komponen. Tabel 3.1 Properties Mini Piano
Nama Kontrol Nama Properties Value/Nilai
Form Piano AutoRedraw False
BackColor &H008080FF&
StartUpPosition 2 – CenterScreen
Width 12900
Image1 Appearance 1-3D
Height 2700 FillStyle 1 – Transprant
Shape28, Shape33 FileColor &H00000000& FillStyle 1 – Transprant
Height 2055 FillStyle 1 – Transprant
Height 2055 FillStyle 1 – Transprant
Height 2055 FillStyle 1 – Transprant
Height 1335
Top 1560
Caption D3 Teknik Informatika Universitas Sumatera Utara
Font Lucida Handwriting
FortColor &H0000FF00&
Height 491
Left 2400
Label4 Appearance 1 – 3D
FillStyle 0 – Transparent
Caption S
Font Microsoft Sans Serif ForeColor &H0000012&
Label34 Caption Y
Lblauthor BackStyle 0 – Transprent
Caption By : Dian Mariana Silaen
Font Lucida Handwriting
ForeColor &H0000FFFF& LblBlank(0) BackColor &H00808080&
Caption 1
LblBaseKey Appearance 0 – Flat
BackColor &H000000FF&
Caption C
DataDield 1 – Opaque
Height 495
Left 8640
LblBeatCtrl(0) Caption 4
FonColor &H000000C0&
Height 375
Left 4800
LblBeatCtrl(1) Caption 8
LblBeatCtrl(2) Caption ;
LblBeatCtrl(3) Caption 6
LblBeatCtrl(4) Caption <
LblDrums(0) Caption 0
LblDrums(10) Caption 10
LblDrums(11) Caption 11
LblInstrument BackColor &H00808080& BackStyle 1 – Opaque
Font Snap ITC
Height 450
Left 8640
LblExit BackColor &8000000F& BackStyle 0 – Transparent
Caption ỳ
Mnubasekey(0) Caption C
Index 0
Mnubasekey(1) Caption C#
Index 1
Mnubasekey(2) Caption D
Index 2
Mnubasekey(3) Caption D#
Index 3
Mnubasekey(4) Caption E
Index 4
Mnubasekey(5) Caption F
Index 5
Mnubasekey(6) Caption F#
Index 6
Mnubasekey(7) Caption G
Index 7
Mnubasekey(8) Caption G#
Index 8
Mnubasekey(9) Caption A
Index 9
Mnubasekey(10) Caption A#
Index 10
Mnubasekey(11) Caption B
Index 11
Index 0
MnuDevice(0) Caption Device
Index 0
MnuDrum(0) Caption mnuDrum
Index 0
MnuMain(0) Caption Piano
Index 0
MnuMain(1) Caption Drum
Index 1
MnuMain(2) Caption Beat
Index 2
MnuMain(3) Caption Device
Index 3
MnuMain(4) Caption Key
Index 4
MnuPiano(0) Caption Piano
Index 0
tmrBeat Interval 150
Left 7363
Mulai 3.4 Flowchart Mini Piano
BAB 4
IMPLEMENTASI SISTEM
4.1Implementasi Sistem
Implementasi merupakan tahap penerapan rancangan yang sudah dibuat kedalam bahasa pemrograman yang digunakan. Dalam hal ini dilakukan beberapa hal yaitu penulisan program, kompilasi dan membuat program aplikasi yang siap pakai atau excecutable. Sebelum program aplikasi diterapkan, maka program harus di test untuk menghindari kesalahan-kesalan yang 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 disyaratkan. Kesalan ini mudah ditemukan, karena compiler akan memberitahukan letak kesalahan program waktu dikompilasi run.
2. Kesalahan sewatu proses (run time errors) adalah kesalahan yang terjadi sewaktu excecutable program dijalankan, dimana proses program akan berhenti sebelum selesai pada saaatnya, karena compiler menemukan kondisi-kondisi yang belum terpenuhi yang tidak bisa dijalankan.
program dengan menggunakan data tertentu dan membandingkan hasil pengolahannya dengan hasil yang sudah diketahui.
4. Kode sumber program (source code)
Tahap yang dilakukan setelah menganalis 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 akhir 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 kesalah sintaks yang disebabkan oleh kesalahan pengetikan, inkonsistensi program dan kesalahan tata bahasa pemrograman. Apabila ada kesalahan sintaks maka kesalahan tersebut harus diperbaiki sehingga program tidak memiliki atau kesalahn sintaks.
c. Pengujian program, yaitu proses pengujian yang dilakukan untuk mendeteksi kesalahan yang disebabkan penghentian program yang secara tidak normal, dan kesalahan logika program.
d. Pengujian data, yaitu identifikasi dan penganganan data yang benar dan 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
Dokumentasi adalah penjelasan tertulis tentang program dan cara pengoperasian serta pemeliharaan program. Dokumentasi program sangat membantu dalam melakukan koneksi program dan perubahan atau pengembangan program.
4.2Kebutuhan Sistem
Sarana-sarana pendukung sangat dibutuhkan untuk memperoleh hasil dalam perancangan system 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
pengolahan (processor) dan perangkat keluaran I(output device). Adapun hardware yang digunakan penulis dalam merancang system ini adalah :
a. Peralatan input, seperti : mouse, keyboard.
b. Peralatan proses, seperti : processor, RAM 1GB, motherboard, hardisk 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 sistem 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. Software yang digunakan antara lain :
a. System Operasi 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 pengolah komputer maupun perkembangan, yang termasuk dalam brainware :
a. Analisis Sistem, yaitu orang yang membentuk dan membangun fasilitas rancangan sistem program.
c. Operator (Administrator), yaitu orang yang mengoperasikan system seperti memasukan data untuk dioperasikan oleh komputer dalam mengahasilkan informasi dan lainnya.
d. Public (pengguna), yaitu orang yang memakai sistem yang telah dirancang.
4.3Prosedur Penggunaan Program
Buka Aplikasi Mini Piano pada computer Anda.
1 2 3
4 5 6 7
8 9 10 11 12 13
Gambar 4.1 Aplikasi Mini Piano
Keterangan cara menggunakan Aplikasi Mini Piano ini adalah : 1. Mengatur Volume suara Mini Piano.
3. Ada beberapa jenis suara piano, seperti : Electric Grand Piano, Harpsichord, MusicBox, Acoustic Nylon Guitar, dll.
4. Jenis suara piano, seperti : Ridebell, Tambourine, Cowbell, dll. 5. Mengatur kecepatan music pada piano.
6. Untuk memilih jenis suara piano.
7. Exit, untuk keluar dari memainkan piano. 8. Play, untuk memainkan music pada piano.
9. Saat music pada piano dimainkan, tombol ini berguna untuk mengatur ketukan saat memaikan piano menggunakan tut-tut piano.
10.Pause, untuk menunda suara music pada piano saat dimainkan. 11.Untuk memperlambat ketukan music piano.
12.Stop, untuk berhenti saat piano dimainkan.
13.Musik pada piano, ada 3 yaitu Disco, Rock, dan 16Beat.
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan hasil penjelasan dari bab-bab sebelumnya dengan adanya Aplikasi Mini Piano, penulis dapa menyimpulkan bahwa :
1. Aplikasi Mini Piano ini digunakan untuk mempermudah masyarakat dalam bermain piano.
2. Aplikasi Mini Piano ini dapat digunakan dikomputer mana saja yang memiliki system operasi Windows.
3. Penggunaan Aplikasi Mini Piano ini sangat mudah digunakan karena tampilan yang sederhana.
5.2 Saran
Dalam pembuatan dan perancangan Aplikasi Mini Piano ini diperlukan saran-saran yang mendukung Aplikasi agar dapat dirancang dengan lebih baik, adapun sara-saran tersebut yaitu :
1. Letak tombol-tombol Aplikasi Mini Piano ini tidak tersusun rapi. 2. Desain Aplikasi Mini Piano ini terlalu full color.
DAFTAR PUSTAKA
Alam M, A.J. 2003. Belajar Sendiri Microsoft Visual Basic 6.0. Jakarta: PT. Elex
Media Komputindo.
Panduan Tatacara Penulisan Skripsi Tugas Akhir.2008. 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.
Suryani, taryana. 2009. Visual Basic. Bandung : Graha Ilmu.
LISTING PROGRAM
1.FORM PIANO
Private Declare Sub ReleaseCapture Lib "user32" ()
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Long) As Long
Private Declare Function CreateRoundRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hwnd As Long, ByVal hrgn As Long, ByVal bRedraw As
Boolean) As Long
Dim KeyState(0 To 255) As Byte
Dim KeyState1(0 To 255) As Byte
Dim LastKey As Integer
Dim Keys
Dim DrumKeys
Dim Drums
Dim Banks(0 To 4) As Integer
Dim BaseKey As Integer
Dim InstrSelect As Integer
Dim DrumSelect As Integer
Dim Volume As Integer
Dim Record As Boolean
Dim BeatPtr As Integer
Dim BeatMode As Integer
Dim BeatNext As Integer
Private Sub Command1_Click()
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If LastKey <> KeyCode Then
LastKey = KeyCode
If KeyCode >= vbKeyF1 And KeyCode <= vbKeyF4 Then
lblBank_MouseDown KeyCode - vbKeyF1, vbLeftButton, 0, 0, 0
lblBank(KeyCode - vbKeyF1).BackColor =
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
KeyState1(KeyCode) = 0
Input #1, Drums(0), Drums(1), Drums(2), Drums(3), Drums(4), Drums(5), Drums(6), Drums(7), Drums(8), Drums(9), Drums(10), Drums(11)
N = VBMIDI.midiOutGetNumDevs
For i = 0 To N
For i = 0 To 127
Private Sub Form_Unload(Cancel As Integer)
MidiClose
'save config
On Error GoTo SkipSaveConfig
Open App.Path & "\config.dat" For Output As #1
Print #1, DeviceID
Print #1, Drums(0), Drums(1), Drums(2), Drums(3), Drums(4), Drums(5), Drums(6), Drums(7), Drums(8), Drums(9), Drums(10), Drums(11)
Close #1
SkipSaveConfig:
End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
FormDrag Me
End Sub
Private Sub lblBank_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
lblBank(Index).BackColor = vbYellow
If Button = vbRightButton Then
Private Sub lblBank_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
lblBank(Index).BackColor = &H808080
Private Sub lblBaseKey_Click()
PopupMenu mnuMain(4)
End Sub
Private Sub lblBeat_Click()
lblBeat.BackColor = vbYellow
PopupMenu mnuMain(2)
lblBeat.BackColor = &H808080
End Sub
Private Sub lblBeatCtrl_Click(Index As Integer)
Select Case Index BeatNext: BeatNext = -2
End Sub
Private Sub lblBeatCtrl_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
lblBeatCtrl(Index).BackColor = vbYellow
End Sub
Private Sub lblBeatCtrl_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
End Sub
Private Sub lblDevice_Click()
lblDevice.ForeColor = vbYellow
PopupMenu mnuMain(3)
lblDevice.ForeColor = &HC0C0C0
End Sub
Private Sub lblDrums_Click(Index As Integer)
DrumSelect = Index
PopupMenu mnuMain(1)
End Sub
Private Sub lblExit_Click()
Unload Me
End Sub
Private Sub lblInstrument_Click()
lblInstrument.BackColor = vbYellow
PopupMenu mnuMain(0)
lblInstrument.BackColor = &H808080
End Sub
Private Sub lblRate_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblRate.Tag = "1"
lblRate_MouseMove Button, Shift, X, Y
Private Sub lblRate_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If lblRate.Tag = "1" Then
Y = Y - lblRatePtr.Height / 2
If Y < 0 Then Y = 0
If Y > lblRate.Height - lblRatePtr.Height Then Y = lblRate.Height - lblRatePtr.Height
lblRatePtr.Top = lblRate.Top + Y
tmrBeat.Interval = 100 * (Y / (lblRate.Height - lblRatePtr.Height)) + Val(lblRatePtr.Tag)
End If
End Sub
Private Sub lblRate_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblRate.Tag = "0"
End Sub
Private Sub lblVolume_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If lblVolume.Tag = "1" Then
X = X - lblVolumePtr.Width / 2
If X < 0 Then X = 0
If X > lblVolume.Width - lblVolumePtr.Width Then X = lblVolume.Width - lblVolumePtr.Width
lblVolumePtr.Left = lblVolume.Left + X
Volume = 127 * (X / (lblVolume.Width - lblVolumePtr.Width))
End If
Private Sub lblVolume_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblVolume.Tag = "1"
lblVolume_MouseMove Button, Shift, X, Y
End Sub
Private Sub lblVolume_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblVolume.Tag = "0"
End Sub
Private Sub mnuBaseKey_Click(Index As Integer)
BaseKey = Index
lblBaseKey = mnuBaseKey(Index).Caption
MidiClose
MidiOpen
End Sub
Private Sub mnuBeat_Click(Index As Integer)
BeatSelect = Index
BeatPtr = 0
BeatMode = 0
lblBeat.Caption = mnuBeat(Index).Caption
lblRatePtr.Tag = CStr(Beats(Index).Rate)
tmrBeat.Interval = Beats(Index).Rate
End Sub
Private Sub mnuDevice_Click(Index As Integer)
MidiClose
MidiOpen
mnuPiano_Click InstrSelect
End Sub
Private Sub mnuDrum_Click(Index As Integer)
Drums(DrumSelect) = Index + 35
End Sub
Private Sub mnuPiano_Click(Index As Integer)
InstrSelect = Index
If mnuMain(0).Tag <> "" Then Banks(Val(mnuMain(0).Tag)) = Index
ChangeInstrument 0, Index
lblInstrument.Caption = mnuPiano(Index).Caption
End Sub
IIf(shpKeys(i).Height < 500, RGB(100, 100, 100), RGB(200, 200, 200))
StartNote 0, i + BaseKey + 48, Volume
Else
shpKeys(i).BackColor = vbBlack
Public Sub FormDrag(TheForm As Form)
ReleaseCapture
Call SendMessage(TheForm.hwnd, &HA1, 2, 0&)
Public Type BeatData
Name As String
Rate As Integer
Data As String
End Type
Public Beats(2) As BeatData
Public Sub LoadBeat()
Beats(1).Name = "Rock"
Beats(1).Rate = 150
Beats(1).Data = "44,35,55||44||44,40||44|;" _
& "44,35||44,35||44,40||44||44,35||44||44,40||44|;" _
Beats(2).Data = "44|44|44|44|44|44|44|44;" _
Beats(0).Data = "44,35,55|46|44,40,35|42;" _
Public Const MAXPNAMELEN = 32
' Error values for functions used in this sample. See the function for more information
Public Const MMSYSERR_BASE = 0
Public Const MMSYSERR_BADDEVICEID = (MMSYSERR_BASE + 2) ' device ID out of range
Public Const MMSYSERR_INVALPARAM = (MMSYSERR_BASE + 11) ' invalid parameter passed
Public Const MMSYSERR_NOMEM = (MMSYSERR_BASE + 7) ' memory allocation error
Public Const MMSYSERR_INVALHANDLE = (MMSYSERR_BASE + 5) ' device handle is invalid
Public Const MIDIERR_BASE = 64
Public Const MIDIERR_STILLPLAYING = (MIDIERR_BASE + 1) ' still something playing
Public Const MIDIERR_NOTREADY = (MIDIERR_BASE + 3) ' hardware is still busy
Public Const MIDIERR_BADOPENMODE = (MIDIERR_BASE + 6) ' operation unsupported w/ open mode
'User-defined variable the stores information about the MIDI output device.
Type MIDIOUTCAPS
wMid As Integer ' Manufacturer identifier of the device driver for the MIDI output device
' For a list of identifiers, see the Manufacturer Indentifier topic in the
' Multimedia Reference of the Platform SDK.
wPid As Integer ' Product Identifier Product of the MIDI output device. For a list of
' product
identifiers, see the Product Identifiers topic in the Multimedia
' Reference of the Platform SDK.
' The high-order byte is the major version number, and the low-order byte is following that describes the MIDI output device:
' MOD_FMSYNTH-The device is an FM synthesizer.
' MOD_MAPPER-The device is the Microsoft MIDI mapper.
' MOD_MIDIPORT-The device is a MIDI hardware port.
' MOD_SQSYNTH-The device is a square wave synthesizer.
' MOD_SYNTH-The device is a synthesizer.
wVoices As Integer ' Number of voices supported by an internal synthesizer device. If the
' device is a port, this member is not meaningful and is set to 0.
wNotes As Integer ' Maximum number of simultaneous notes that can be played by an internal
' synthesizer device. If the device is a port, this member is not meaningful
' and is set to 0.
' significant bit refers to channel 0 and the most significant bit to channel
' 15. Port devices that transmit on all channels set this member to 0xFFFF.
dwSupport As Long ' One of the
following describes the optional functionality supported by
' the device:
' MIDICAPS_CACHE-Supports patch caching.
'
MIDICAPS_LRVOLUME-Supports separate left and right volume control.
'
MIDICAPS_STREAM-Provides direct support for the midiStreamOut function.
' MIDICAPS_VOLUME-Supports volume control.
'
' If a device
supports volume changes, the MIDICAPS_VOLUME flag will be set
' for the dwSupport member. If a device supports separate volume changes on
' the left and right channels, both the MIDICAPS_VOLUME and the
' MIDICAPS_LRVOLUME flags will be set for this member.
End Type
Declare Function midiOutGetNumDevs Lib "winmm" () As Integer
Declare Function midiOutClose Lib "winmm.dll" (ByVal hMidiOut As Long) As Long
Declare Function midiOutOpen Lib "winmm.dll" (lphMidiOut As Long, ByVal uDeviceID As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long
Declare Function midiOutShortMsg Lib "winmm.dll" (ByVal hMidiOut As Long, ByVal dwMsg As Long) As Long
Public Declare Function GetTickCount Lib "kernel32" () As Long
Public hMidi As Long
Public DeviceID As Long
Dim rc As Long
Dim midimsg As Long
Public Sub MidiOpen()
Public Sub StartNote(ByVal Channel As Integer, ByVal Index As Integer, ByVal Volume As Integer)
midimsg = &H90 + (Index * &H100) + (Volume * &H10000) + Channel
End Sub
Public Sub StopNote(ByVal Channel As Integer, ByVal Index As Integer)
midimsg = &H80 + (Index * &H100) + Channel
midiOutShortMsg hMidi, midimsg
End Sub
Public Sub ChangeInstrument(ByVal Channel As Integer, ByVal Inst As Integer)
midiOutShortMsg hMidi, &HB0 + Channel
midiOutShortMsg hMidi, 32 * &H100 + &HB0 + Channel
midiOutShortMsg hMidi, Inst * &H100 + &HC0 + Channel
End Sub
Public Sub Delay(S As Long)
Dim N As Long
N = GetTickCount + S
Do
DoEvents
Loop Until GetTickCount >= N