Tutorial Guitar Pro 6

49
Tutorial Guitar Pro 6 (part 1, dasar) Kalian kenal sama suatu program yang namanya ‘Guitar Pro’?? Dari namanya kelihatannya ini adalah program untuk gitar. Ya, benar sekali, memang ini program untuk belajar gitar salah satunya.. Tapi tidak hanya gitar. Akan tetapi bass, piano, bahkan drum sekalipun dapat dipelajari dari sini. Guitar Pro merupakan paduan dari musik dan teknologi. Bagi anda yang tidak mempunyai alat musik tapi ingin membuat lagu, inilah solusinya. Dalam entri ini saya akan memperkenalkan program Guitar Pro lebih dekat. Sebelumnya mari kita lihat salah satu screenshot nya dulu dibawah ini. Disamping ini adalah layar startup dari Guitar pro, terlihat elegan yah.. Kemudian di bawahnya merupakan screenshot layar kerja nya. Dari gambar disamping saya akan menjelaskan satu per satu bagian dari layar kerja tersebut. klik untuk memperbesar

Transcript of Tutorial Guitar Pro 6

Page 1: Tutorial Guitar Pro 6

Tutorial Guitar Pro 6 (part 1, dasar)

Kalian kenal sama suatu program yang namanya ‘Guitar Pro’?? Dari namanya kelihatannya ini adalah program untuk gitar. Ya, benar sekali, memang ini program untuk belajar gitar salah satunya.. Tapi tidak hanya gitar. Akan tetapi bass, piano, bahkan drum sekalipun dapat dipelajari dari sini. Guitar Pro merupakan paduan dari musik dan teknologi. Bagi anda yang tidak mempunyai alat musik tapi ingin membuat lagu, inilah solusinya.

Dalam entri ini saya akan memperkenalkan program Guitar Pro lebih dekat. Sebelumnya mari kita lihat salah satu screenshot nya dulu dibawah ini.

Disamping ini adalah layar startup dari Guitar pro, terlihat elegan yah..

Kemudian di bawahnya merupakan screenshot layar kerja nya. Dari gambar disamping saya akan menjelaskan satu per satu bagian dari layar kerja tersebut.

klik untuk memperbesar

1. Yang pertama ini adalah Title Bar, dan juga Toolbar yang berisi fungsi dasar seperti New, Open, Save, Import, Quit, dan lainnya hingga fungsi kompleks berupa efek suara.

2. Di bagian yang ke dua ini adalah bagian yang berisi perintah-perintah penting dalam pembuatan lagu. Contohnya pada panjang pendeknya nada, besar kecilnya suara not, dan lainnya.

3. Layar ketiga ini adalah gambaran dari not-not balok hasil dari pembuatan lagu. Mungkin beberapa dari kalian tidak mengerti, atau mungkin tidak dapat membaca maksud dari not balok tersebut. Bagian ini akan saya bahas kemudian.

Page 2: Tutorial Guitar Pro 6

4. Selanjutnya di bagian keempat ini berisi beberapa fungsi yang sedikit, dan hanya untuk praktek langsung, seperti memainkan lagu yang telah dibuat, mengatur tempo atau kecepatan lagu, dan sebagainya.

5. Di bagian ke 5 ini anda akan melihat banyak kotak berjejer. Kotak yang berisi warna tersebut menandakan bahwa pada kolom tersebut berisi nada yang dapat dimainkan. Sedangkan yang kosong, atau berwarna abu-abu merupakan kolom kosong yang tidak berisi nada. Jika dimainkan tidak akan mengeluarkan bunyi. Kemudian pada tiap baris mewakilkan sebuah alat musik, seperti gitar, drum, piano, ataupun synthesizer. Setiap ganti baris, maka ganti pula alat musiknya.

Tutorial Guitar Pro 6 (part 2, Penggunaan Tool)

Mungkin untuk yang penggunaan fungsi dasar seperti Open, New, Save, dan lainnya anda sudah paham, jadi langsung saja saya lewatkan ke fungsi yang sedikit lebih kompleks.

Menu Dasar

Dari menu ‘File’, beberapa yang mungkin belum diketahui adalah:

Import

Digunakan untuk memasukkan data dari file format lain ke dalam file guitar pro agar dapat dilihat tangga nadanya. Misalnya pada sub menu import > MIDI… dapat memasukkan file lagu midi kedalam program guitar pro. Ingat, disini tidak dapat mengimport file lagu mp3.

Page 3: Tutorial Guitar Pro 6

Sedangkan pada sub menu import > ASCII… merupakan sebuah fungsi yang digunakan untuk memasukkan data not balok berupa teks ke dalam guitar pro. Biasanya not gitar. Seperti ini misalnya:

e|---------------------------------------------------|B|---------------------------------------------------|G|--8-7-8-------6----------8-7-8s10-----6------------|D|--8-----8-----6-5--------8------------6-5----------|A|--6-----------4---6------6------------4---6--------|E|---------------------------------------------------|

Export

Berlawanan dengan import, export digunakan untuk mengeluarkan file guitar pro menjadi format lain. Untuk fungsi export mendukung sedikit lebih banyak format file, seperti PDF, WAV, dan PNG. Untuk format PNG dan PDF, guitar pro hanya akan mengekspor gambar not baloknya saja. Versi lagunya dapat diekspor dengan format WAV. Untuk versi format WAV, guitar pro akan meyimpan file lagu dengan bit rate tinggi. Untuk lagu 4 menit saja dapat menyerap memori hingga 32 MB. Sangat besar untuk ukuran lagu biasa.

Score Information

Berisi pengaturan untuk informasi dasar dari sebuah lagu tersebut, seperti judul lagu, penyanyi, album, pencipta, copyright, dan lainnya.

Tutorial Guitar Pro 6 (part 3, Tools tentang Not Balok)

Tools Tentang Not Balok

Page 4: Tutorial Guitar Pro 6

Anda lihat gambar disamping? Ini adalah salah satu bagian toolbox dari guitar pro. Di bagian ini berfungsi dalam pembuatan not balok dari bagian yang paling mendasar hingga pada efek slide pada gitar, efek dead note, ataupun yang lainnya.

Karena keterbatasan waktu penulisan dan pembacaan kalian, maka saya hanya akan membahas beberapa fungsi dasar yang penting saja.

Pada bagian yang pertama, pada gambar berikut ( ), pada bagian pertama, baris pertama, kolom ke 3, bernama Time Signature, berfungsi menentukan panjang bagian nada lagu yang akan dibuat, misalnya 3/4, 4/4, 6/8, dan lainnya. Biasanya yang digunakan oleh kebanyakan lagu adalah 4/4, tetapi beberapa juga menggunakan 3/4, contohnya pada lagu SUM41 - So Long Goodbye, Avril Lavigne – Keep Holding On, Vierra – Perih, dan lainnya.

Selanjutnya bagian ( ) yang namanya Repeat Sequence. Ada tiga buah tombol disana, fungsi keseluruhannya untuk membuat not balok diantara kedua tanda tersebut dimainkan secara berulang. Pada gambar yang pertama berfungsi untuk memulai bagian yang akan diulang, kemudian gambar terakhir, atau yang paling kanan berfungsi untuk menutup bagian yang ingin diulang, sekaligus untuk menentukan berapa kali jumlah pengulangan pada not tersebut.

---

Dibawahnya, gambar Note ( ) berfungsi untuk mengatur panjang-pendeknya not. Dari yang sebelah kiri, 1 not penuh, 1/2 not, 1/4 not, 1/8 not, 1/32 not, dan 1/64 not (berdasarkan not 4/4). Berdasarkan pembuatannya nanti, pada satu bagian not harus terisi total 1 not. Jika tidak maka nanti akan dideteksi kesalahan dan pada not bagian itu akan diwarnai merah oleh program guitar pro.

Tepat disamping Note ada fungsi Rest ( ) yang fungsinya untuk membentuk nada kosong, dalam arti jika dimainkan tidak menghasilkan bunyi apapun. Note Rest juga dapat diatur panjang-pendeknya not melalui fungsi Note yang telah saya jelaskan diatas.

Berikutnya adalah Dotting, ada 2 macam, yaitu Dotting dan Double Dotting ( ). Untuk Dotting, berfungsi menambahkan panjang not menjadi 1,5 kali panjang not sebelumnya. Sedangkan untuk Double Dotting berfungsi untuk menambahkan panjang not menjadi 1,75 kali panjang not sebelumnya.

Selanjutnya, untuk gambar berikut ( ) berfungsi untuk mengatur suara dari not tersebut apakah besar atau kecil. Dapat diartikan juga kuat lemahnya petikan pada gitar, atau pukulan pada drum, dan sebagainya. Dari sebelah paling kiri (ppp) merupakan suara yang paling kecil, hingga paling keras pada (fff) paling kanan.

---

Bagian yang ketiga, saya mulai dari fungsi Dead Note, yang berlambang X ( ). Fungsinya membuat nada mati pada not tersebut. Maksudnya seperti jika pada gitar kita menekan senar

Page 5: Tutorial Guitar Pro 6

pada fret gitar dengan tekanan yang tidak penuh, maka suara petikan yang dihasilkan adalah suara mati.

Disampingnya, terdapat fungsi Bend ( ), berfungsi untuk menaikkan nada secara perlahan.

Selanjutnya ada vibrato ( ), ada dua macam, yaitu Left-Hand Vibrato dan Vibrate w/ trem. bar. Fungsinya untuk membuat efek suara yang bergetar pada nada tersebut.

Fungsi selanjutnya adalah fungsi slide ( ), fungsinya untuk membuat efek slide pada fret gitar. Dari yang pertama, Legato Slide, Shift Slide, Slide In From Above, Slide In From Below, Slide Out Downwards, Slide Out Upwards. Untuk lebih jelasnya silahkan dicoba satu per satu.

Beberapa baris dibawahnya, terdapat fungsi Grace Note ( ). Fungsinya sebagai not tersembunyi yang terletak tepat sedikit sebelum not terpilih (Grace Note(s) before the Beat), ataupun setelahnya (Grace Note(s) on the Beat).

Page 6: Tutorial Guitar Pro 6

MEMBUAT APLIKASI PENGHITUNG HARGA BARANG DENGAN VISUAL BASIC | MEMBUAT PROGRAM PENGHITUNG HARGA BARANG DENGAN VB

1.    Buatlah New Project pada software VB anda kemudian tambahkan empat

buah kontrol label, empat TextBox dan satu commandButton pada form,

kemudian atur letaknya seperti pada gambar berikut : 

 Gambar aplikasi penghitung harga barang dengan VB

2.    Atur properti caption untuk masing-masing label dan commanButton seperti

pada gambar diatas.

3.    Klik ganda tombol CommandButton1(proses), kemudian ketikkan

kode/listing/script program berikut :

Private Sub Command1_Click()

Dim a, b, c As Integer

a = Val(Text1.Text)

b = Val(Text2.Text)

c = Val(Text3.Text)

Text4.Text = (a * b) - (a * b * c) / 100

Page 7: Tutorial Guitar Pro 6

End Sub

Pernyataan Dim adalah untuk mendeklarasikan variabel a, b, dan c dimana

variabel tersebut untuk mewakili/menampung nilai yang diketikkan pada

text1, text2 dan text3 dengan tipe integer (angka). Jika tombol

commandbutton1/tombol proses diklik maka pada text4 akan menampilkan

hasil perhitungan antara perkalian nilai yang diketikkan pada text1 dan text2

kemudian dikalikan dengan nilai yang diketikkan pada text3.

4.    Jalankan Program dengan menekan tombol F5, kemudian coba ketikkan nilai

pada masing-masing textbox dan tekan tombol proses.

5.    Hasilnya seperti berikut:

 Gambar Program Penghitung harga Barang dengan VB

6.    Simpan hasil proyek Anda dan Selamat mencoba,,Sesungguhnya sifat malas

itu datang dari hati yang kotor..!

Referensi : Microsoft Visual Basic 6.0 Untuk Pemula (MADCOMS)

Program Absensi Menggunakan Visual Basic

Page 8: Tutorial Guitar Pro 6

Posted by imin at Friday, June 22, 2012 Program Absensi Menggunakan Visual Basic - Selamat Pagi! Di hari yang cerah ini, BLOGNYA SI IMIN akan memposting tentang pemrograman. Tentunya postingan ini saya tujukan kepada pembaca sekalian yang suka dengan pemrograman, seperti Visual Basic. Ya! Kita tahu Visual Basic merupakan software pemrograman yang sangat mudah digunakan untuk membuat sebuah program. Nah kali ini kita akan sama-sama belajar membuat sebuah program absensi menggunakan visual basic.

Langkah pertama yang harus kalian lakukan adalah membuat database di Ms Access dan sekaligus membuat tabelnya:

Nama Database : latihan.mdbNama Tabel       : Absen

Field Type Size

NRP Text 10

Nama Text 35

Jurusan Text 50

Matkul Text 50

Masuk Byte

Sakit Byte

Izin Byte

Alpa Byte

Total Byte

Setelah membuat database dan tabelnya, silahkan buat design formnya dengan menambahkan component:Adodc dan DataGrid

Design Formnya seperti ini:

Page 9: Tutorial Guitar Pro 6

Lalu tambahkan coding di bawah ini di module. Untuk menambahkan module, caranya klik menu projet --> add module. Codingnya seperti ini:

Public ConN As New ADODB.ConnectionPublic RsAbsen As New ADODB.Recordset

Sub koneksi()Set ConN = New ADODB.ConnectionSet RsAbsen = New ADODB.RecordsetConN.Open "Provider=microsoft.jet.oledb.4.0;data source = " & App.Path & "latihan.mdb"End SubLalu save Module nya... Nah untuk formnya silahkan masukan coding di bawah ini:

Private Sub Form_Activate()Call koneksiAdodc1.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "latihan.mdb"Adodc1.RecordSource = "absen"Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshEnd Sub

Private Sub Form_Load()Text1.Text = ""Text2.Text = ""Combo1.Text = ""Combo2.Text = ""Combo3.Text = ""Label11.Caption = 0Label12.Caption = 0Label13.Caption = 0Label14.Caption = 0Label15.Caption = 0Combo1.AddItem "Sistem Informasi"Combo1.AddItem "Teknik Informatika"Combo1.AddItem "Manajemen Informatika"Combo1.AddItem "Komputer Akuntansi"Combo2.AddItem "Pemprograman Visual I"Combo2.AddItem "Pemprograman Visual II"Combo3.AddItem "Hadir"Combo3.AddItem "Tidak Hadir"Option1.Value = FalseOption2.Value = False

Page 10: Tutorial Guitar Pro 6

Option3.Value = FalseOption1.Enabled = FalseOption2.Enabled = FalseOption3.Enabled = FalseText1.Enabled = FalseText2.Enabled = FalseCombo1.Enabled = FalseCombo2.Enabled = FalseCombo3.Enabled = FalseEnd SubKemudian buat function cari data, sub tampilkan data dan kosong seperti dibawah ini :Function CariData()    Call koneksi    RsAbsen.Open "Select * From absen where nrp='" & Text1 & "'", ConNEnd Function

Private Sub TampilkanData()Text2 = RsAbsen!namaCombo1.Text = RsAbsen!jurusanCombo2.Text = RsAbsen!matkulLabel11.Caption = RsAbsen!masukLabel12.Caption = RsAbsen!sakitLabel13.Caption = RsAbsen!izinLabel14.Caption = RsAbsen!alpaLabel15.Caption = RsAbsen!totalEnd Sub

Private Sub kosong()Text1.Text = ""Text2.Text = ""Combo1.Text = ""Combo2.Text = ""Combo3.Text = ""Label11.Caption = 0Label12.Caption = 0Label13.Caption = 0Label14.Caption = 0Label15.Caption = 0Option1.Value = FalseOption2.Value = FalseOption3.Value = FalseOption1.Enabled = FalseOption2.Enabled = FalseOption3.Enabled = FalseEnd SubUntuk pencarian data, masukkan kode perintah berikut pada Text1 dengan procedure

Page 11: Tutorial Guitar Pro 6

Lostfocus :Private Sub Text1_LostFocus()On Error Resume NextCall CariData        If Not RsAbsen.EOF Then            TampilkanData            Text1.Enabled = False            Text2.Enabled = False            Combo1.Enabled = False            Combo2.Enabled = False            MsgBox "NRP Sudah Ada"            Command1.Enabled = False        End IfEnd SubPada Combo3 atau combo untuk kehadiran, isikan kode berikut untk proses perhitungan absen masuk :Private Sub Combo3_Click()If Combo3.Text = "Hadir" ThenOption1.Enabled = FalseOption2.Enabled = FalseOption3.Enabled = FalseLabel11.Caption = Val(Label11.Caption) + 1ElseOption1.Enabled = TrueOption2.Enabled = TrueOption3.Enabled = TrueEnd IfEnd Sub

Kemudain Pada Option 1, 2 dan 3, isikan kode perintah untuk menghitung absen alasan tidak hadir dan total tidak hadir :

Private Sub Option1_Click()If Option1.Value = True ThenLabel12.Caption = Val(Label12.Caption) + 1ElseLabel12.Caption = Val(Label12.Caption) + 0End IfLabel15.Caption = Val(Label12.Caption) + Val(Label13.Caption) + Val(Label14.Caption)End Sub

Private Sub Option2_Click()If Option2.Value = True ThenLabel13.Caption = Val(Label13.Caption) + 1ElseLabel13.Caption = Val(Label13.Caption) + 0End If

Page 12: Tutorial Guitar Pro 6

Label15.Caption = Val(Label12.Caption) + Val(Label13.Caption) + Val(Label14.Caption)End Sub

Private Sub Option3_Click()If Option3.Value = True ThenLabel14.Caption = Val(Label14.Caption) + 1ElseLabel14.Caption = Val(Label14.Caption) + 0End IfLabel15.Caption = Val(Label12.Caption) + Val(Label13.Caption) + Val(Label14.Caption)End SubTerakhir isikan kode perintah untuk command simpan, edit, absen, hapus, isi data dan selesai :Private Sub Command1_Click()   'Kode Perintah Untuk tombol SimpanDim SQLSimpan As String            SQLSimpan = "Insert Into absen (nrp,nama,jurusan,matkul) values ('" & Text1 & "','" & Text2 & "','" & Combo1.Text & "','" & Combo2.Text & "')"            ConN.Execute SQLSimpan            Form_Activate            Call kosongEnd Sub

Private Sub Command2_Click()     ' Kode Perintah Untuk tombol EditIf Command2.Caption = "Edit Data" ThenText1.Enabled = False            Text2.Enabled = True            Combo1.Enabled = True            Combo2.Enabled = True            Combo3.Enabled = TrueCommand2.Caption = "Edit"Else

Dim SQLAbsen As String            SQLAbsen = "Update absen Set nama='" & Text2.Text & "'," & " matkul='" & Combo2.Text & "'," & " jurusan='" & Combo1.Text & "' where nrp='" & Text1 & "'"            ConN.Execute SQLAbsen            Form_Activate            Call kosong            Command2.Caption = "Edit Data"            End IfEnd Sub

Private Sub Command3_Click()    'Kode Perintah Untuk Tombol AbsenDim SQLAbsen As String            SQLAbsen = "Update absen Set masuk= '" & Label11.Caption & "'," & " sakit='" & Label12.Caption & "'," & " izin='" & Label13.Caption & "'," & " alpa='" & Label14.Caption & "'," & " total='" & Label15.Caption & "' where nrp='" & Text1 & "'"

Page 13: Tutorial Guitar Pro 6

            ConN.Execute SQLAbsen            Form_Activate            Call kosongEnd Sub

Private Sub Command4_Click()    'KOde Perintah Untuk Tombol HapusAdodc1.Recordset.DeleteAdodc1.Recordset.UpdateDataGrid1.RefreshEnd Sub

Private Sub Command5_Click()    'Kode Perintah Untuk Tombol Selesaipesan = MsgBox("Anda Yakin Ingin Keluar Dari Program ini?", vbQuestion + vbYesNo, "Keluar")If pesan = vbYes ThenUnload MeElseEnd IfEnd Sub

Private Sub Command6_Click()   'Kode Perintah Untuk Tombol Isi DataText1.Enabled = True            Text2.Enabled = True            Combo1.Enabled = True            Combo2.Enabled = True            Combo3.Enabled = True            Text1.SetFocusEnd Sub

TUTORIAL MEMBUAT GAME SEDERHANA DENGAN VISUAL BASIC

2 Anda pernah main game ??? jawabannya pasti sering atau bahkan lupa waktu karena

main game alias  “Gamer Mania”. Game online seperti counter strike, point blank, poker,

3 kingdom, dan Dota saya yakin ini game tidak asing lagi ditelinga anda karena hampir di

setiap sudut warung internet kita dapat menjumpainya.

Page 14: Tutorial Guitar Pro 6

Tapi jika ditanya Anda pernah bermain game buatan anda sendiri ??? saya yakin lebih

dari 80 % jawabannya belum atau mungkin belum terpikir sama sekali untuk membuat

game.

Baik kali ini saya akan menguraikan tentang proses bagaimana membuat game dengan

software visual basic. Tetapi disini kita akan membuat game yang sederhana bukan

membuat game seperti yang disebutkan diatas karena game seperti itu saya yakin sulit

atau bahkan tidak bisa dibuat oleh satu orang artinya memerlukan banyak kepala dalam

proses pembuatannya dan algoritma yang dipakai pun pasti sangat rumit.

Oke langsung saja berikut tutorial pembuatan game sederhana dengan Visual Basic :

1.      Bukalah aplikasi visual basic yang telah terinstall di PC anda, kemudian seperti biasa

buat new project dengan standar.exe.

2.      Kemudian tambahkan 4 buah frame, 4 label, 9 kontrol image, 9 kontrol shape, 2

CommandButton, dan 2 buah timer pada form.

3.      Lalu desainlah menjadi seperti gambar dibawah ini :

Page 15: Tutorial Guitar Pro 6

 Gambar Pengaturan kontrol dalam Membuat Game VB

4.      Aturlah properties kontrol-kontrol sesuai gambar diatas dan isikan interval 100 pada

kedua timer.

5.      Bukalah jendela kode, lalu ketikkan kode / script / listing program seperti di bawah ini :

Dim Merah, M1, M2, M3, M4, M5, M6, M7, M8, M9 As BooleanDim Hitam, H1, H2, H3, H4, H5, H6, H7, H8, H9 As BooleanDim Point_Merah As IntegerDim Point_Hitam As Integer

Function Hidden()Shape1.Visible = FalseShape2.Visible = FalseShape3.Visible = FalseShape4.Visible = FalseShape5.Visible = FalseShape6.Visible = FalseShape7.Visible = FalseShape8.Visible = FalseShape9.Visible = FalseM1 = False: M2 = False: M3 = False: M4 = FalseM5 = False:  M6 = False: M7 = False:  M8 = False:  M9 = FalseH1 = False: H2 = False: H3 = False: H4 = FalseH5 = False:  H6 = False: H7 = False:  H8 = False: H9 = FalseEnd Function

Private Sub Command1_Click()HiddenPoint_Merah = 0Point_Hitam = 0End Sub

Private Sub Command2_Click()EndEnd Sub

Private Sub Form_Load()Merah = TrueHitam = FalseShape1.Visible = FalseShape2.Visible = FalseShape3.Visible = FalseShape4.Visible = False

Page 16: Tutorial Guitar Pro 6

Shape5.Visible = FalseShape6.Visible = FalseShape7.Visible = FalseShape8.Visible = FalseShape9.Visible = FalseEnd Sub

Private Sub Image1_Click()If Merah = True And Shape1.Visible = False ThenShape1.Visible = TrueShape1.BackColor = vbRedM1 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape1.Visible = False ThenShape1.Visible = TrueShape1.BackColor = vbBlackH1 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image2_Click()If Merah = True And Shape2.Visible = False ThenShape2.Visible = TrueShape2.BackColor = vbRedM2 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape2.Visible = False ThenShape2.Visible = TrueShape2.BackColor = vbBlackH2 = TrueMerah = TrueHitam = FalseExit SubEnd If

Page 17: Tutorial Guitar Pro 6

End Sub

Private Sub Image3_Click()If Merah = True And Shape3.Visible = False ThenShape3.Visible = TrueShape3.BackColor = vbRedM3 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape3.Visible = False ThenShape3.Visible = TrueShape3.BackColor = vbBlackH3 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image4_Click()If Merah = True And Shape4.Visible = False ThenShape4.Visible = TrueShape4.BackColor = vbRedM4 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape4.Visible = False ThenShape4.Visible = TrueShape4.BackColor = vbBlackH4 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image5_Click()

Page 18: Tutorial Guitar Pro 6

If Merah = True And Shape5.Visible = False ThenShape5.Visible = TrueShape5.BackColor = vbRedM5 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape5.Visible = False ThenShape5.Visible = TrueShape5.BackColor = vbBlackH5 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image6_Click()If Merah = True And Shape6.Visible = False ThenShape6.Visible = TrueShape6.BackColor = vbRedM6 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape6.Visible = False ThenShape6.Visible = TrueShape6.BackColor = vbBlackH6 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image7_Click()If Merah = True And Shape7.Visible = False ThenShape7.Visible = TrueShape7.BackColor = vbRedM7 = True

Page 19: Tutorial Guitar Pro 6

Hitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape7.Visible = False ThenShape7.Visible = TrueShape7.BackColor = vbBlackH7 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image8_Click()If Merah = True And Shape8.Visible = False ThenShape8.Visible = TrueShape8.BackColor = vbRedM8 = TrueHitam = TrueMerah = FalseExit SubEnd If

If Hitam = True And Shape8.Visible = False ThenShape8.Visible = TrueShape8.BackColor = vbBlackH8 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Image9_Click()If Merah = True And Shape9.Visible = False ThenShape9.Visible = TrueShape9.BackColor = vbRedM9 = TrueHitam = TrueMerah = FalseExit SubEnd If

Page 20: Tutorial Guitar Pro 6

If Hitam = True And Shape9.Visible = False ThenShape9.Visible = TrueShape9.BackColor = vbBlackH9 = TrueMerah = TrueHitam = FalseExit SubEnd If

End Sub

Private Sub Timer1_Timer()If M1 = True And M2 = True And M3 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M4 = True And M5 = True And M6 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M7 = True And M8 = True And M9 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M1 = True And M5 = True And M9 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M1 = True And M4 = True And M7 = True Then

Page 21: Tutorial Guitar Pro 6

MsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M3 = True And M5 = True And M7 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M3 = True And M6 = True And M9 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If M2 = True And M5 = True And M8 = True ThenMsgBox "Pemain Merah yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Merah = Point_Merah + 1Timer1.Enabled = TrueEnd If

If H1 = True And H2 = True And H3 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H4 = True And H5 = True And H6 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

Page 22: Tutorial Guitar Pro 6

If H7 = True And H8 = True And H9 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H1 = True And H5 = True And H9 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H1 = True And H4 = True And H7 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H3 = True And H5 = True And H7 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H3 = True And H6 = True And H9 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1Timer1.Enabled = TrueEnd If

If H2 = True And H5 = True And H8 = True ThenMsgBox "Pemain Hitam yang Menang", vbOKOnlyTimer1.Enabled = FalseHiddenPoint_Hitam = Point_Hitam + 1

Page 23: Tutorial Guitar Pro 6

Timer1.Enabled = TrueEnd If

End Sub

Private Sub Timer2_Timer()Label1.Caption = Point_MerahLabel2.Caption = Point_HitamEnd Sub

6.      Setelah anda yakin semuanya benar sekarang save dan jalankan (run) program. Maka

tampilannya kan seperti gambar dibawah ini :

 Gambar Tampilan pertama Game pada VB

7.      Sekarang anda bisa mencoba game buatan anda sendiri (Good Luck)…!!!

(“Musuh terbesar kegagalan adalah usaha yang besar”)

Page 24: Tutorial Guitar Pro 6

 Gambar Tutorial Membuat Game Sederhana dengan VB

 Gambar keterangan Pemenang Game VB

MEMBUAT APLIKASI GAME 10 DETIK DENGAN VB 6.0

Jul.27, 2009 in Computer

MEMBUAT APLIKASI GAME 10 DETIK DENGAN VB 6.0

Download contoh game

Page 28: Tutorial Guitar Pro 6

gambar 1.7 ( frmGameOver Descriptione)

<!– @page { size: 8.5in 11in; margin: 0.79in } P { margin-bottom: 0.08in } –>

APLIKASI GAME 10 DETIK

Aplikasi game 10 detik merupakan sebuah game yang dibilang sederhana, cara memainkan game ini adalah dengan cara mengumpulkan poin – poin dari masing-masing pengeklikan tombol yang dimana setiap tombol memiliki nilai 10. Batas pengeklikan adalah 10 detk. Apabila anda mengeklik di luar 10 detik, maka tombol tidak akan dapat digunakan lagi. Pengumpulan poin tergantung pada kecepatan anda mengeklik masing-masing tombol. Anda akan menghasilkaan poin maksimal sebesar 21000.

MENDESAIN APLIKASI GAME 10 DETIK

Bukalah Ikon Visual Basic

Pilih Standart.Exe

Page 31: Tutorial Guitar Pro 6

Ketikan Kode-kode berikut ini sesuai dengan masing-masing form

frmGame :

Option Explicit

‘ Declare countdown variables for each button. These will begin at 10‘ and countdown by one with each buttons timer event.Dim fiCount1 As IntegerDim fiCount2 As IntegerDim fiCount3 As IntegerDim fiCount4 As IntegerDim fiCount5 As IntegerDim fiCount6 As IntegerDim fiCount7 As IntegerDim fiCount8 As IntegerDim fiCount9 As Integer

‘Declare countdown speed variables for each button. Each button will have its‘own random countdown speed which will decrease when the button is clicked.Dim fiSpeed1 As IntegerDim fiSpeed2 As IntegerDim fiSpeed3 As IntegerDim fiSpeed4 As IntegerDim fiSpeed5 As IntegerDim fiSpeed6 As IntegerDim fiSpeed7 As IntegerDim fiSpeed8 As IntegerDim fiSpeed9 As Integer

‘Declare variable for game scoreDim fiScore As IntegerDim fiNumLeft As Integer

‘Declare variable to check that same button has not been pressed twice so as to‘disable cheating by just clicking repeatedly on the button.Dim fiLastPressed As Integer

Private Sub cmd1_Click()If fiLastPressed <> 1 ThenfiCount1 = 10cmd1.Caption = 10Timer1.Interval = Timer1.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 1

Page 32: Tutorial Guitar Pro 6

End IfEnd Sub

Private Sub cmd2_Click()If fiLastPressed <> 2 ThenfiCount2 = 10cmd2.Caption = 10Timer2.Interval = Timer2.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 2End IfEnd Sub

Private Sub cmd3_Click()If fiLastPressed <> 3 ThenfiCount3 = 10cmd3.Caption = 10Timer3.Interval = Timer3.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 3End If

End Sub

Private Sub cmd4_Click()If fiLastPressed <> 4 ThenfiCount4 = 10cmd4.Caption = 10Timer4.Interval = Timer4.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 4End IfEnd Sub

Private Sub cmd5_Click()If fiLastPressed <> 5 ThenfiCount5 = 10cmd5.Caption = 10Timer5.Interval = Timer5.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 5

Page 33: Tutorial Guitar Pro 6

End IfEnd Sub

Private Sub cmd6_Click()If fiLastPressed <> 6 ThenfiCount6 = 10cmd6.Caption = 10Timer6.Interval = Timer6.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 6End IfEnd Sub

Private Sub cmd7_Click()If fiLastPressed <> 7 ThenfiCount7 = 10cmd7.Caption = 10Timer7.Interval = Timer7.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 7End IfEnd Sub

Private Sub cmd8_Click()If fiLastPressed <> 8 ThenfiCount8 = 10cmd8.Caption = 10Timer8.Interval = Timer8.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 8End IfEnd Sub

Private Sub cmd9_Click()If fiLastPressed <> 9 ThenfiCount9 = 10

cmd9.Caption = 10Timer9.Interval = Timer9.Interval - 50fiScore = fiScore + 10TxtScore.Text = Str(fiScore)fiLastPressed = 9

Page 34: Tutorial Guitar Pro 6

End IfEnd Sub

Private Sub cmdQuit_Click()EndEnd Sub

Private Sub cmdStart_Click()

cmd1.Enabled = Truecmd2.Enabled = Truecmd3.Enabled = Truecmd4.Enabled = Truecmd5.Enabled = Truecmd6.Enabled = Truecmd7.Enabled = Truecmd8.Enabled = Truecmd9.Enabled = True

fiCount1 = 11fiCount2 = 11fiCount3 = 11fiCount4 = 11fiCount5 = 11fiCount6 = 11fiCount7 = 11fiCount8 = 11fiCount9 = 11fiScore = 0TxtScore.Text = “0″fiLastPressed = 0fiNumLeft = 8

’set initial start speeds for each timerTimer1.Interval = 1000Timer2.Interval = 1000Timer3.Interval = 1000Timer4.Interval = 1000Timer5.Interval = 1000Timer6.Interval = 1000Timer7.Interval = 1000Timer8.Interval = 1000Timer9.Interval = 1000

‘Start all timers counting downTimer1.Enabled = True

Page 35: Tutorial Guitar Pro 6

Timer2.Enabled = TrueTimer3.Enabled = TrueTimer4.Enabled = TrueTimer5.Enabled = TrueTimer6.Enabled = TrueTimer7.Enabled = TrueTimer8.Enabled = TrueTimer9.Enabled = TruetmrEndGame.Enabled = True

End Sub

Private Sub Command1_Click()frmAbout.ShowEnd Sub

Private Sub Form_Load()fiCount1 = 10fiCount2 = 10fiCount3 = 10fiCount4 = 10fiCount5 = 10fiCount6 = 10fiCount7 = 10fiCount8 = 10fiCount9 = 10fiScore = 0TxtScore.Text = “0″fiLastPressed = 0fiNumLeft = 8

’set initial start speeds for each timerTimer1.Interval = 1000Timer2.Interval = 1000Timer3.Interval = 1000Timer4.Interval = 1000Timer5.Interval = 1000Timer6.Interval = 1000Timer7.Interval = 1000Timer8.Interval = 1000Timer9.Interval = 1000

End Sub

Private Sub Timer1_Timer()If fiCount1 = 0 Then

Page 36: Tutorial Guitar Pro 6

Timer1.Enabled = Falsecmd1.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount1 = fiCount1 - 1cmd1.Caption = Str(fiCount1)End IfEnd Sub

Private Sub Timer2_Timer()If fiCount2 = 0 ThenTimer2.Enabled = Falsecmd2.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount2 = fiCount2 - 1cmd2.Caption = Str(fiCount2)End IfEnd Sub

Private Sub Timer3_Timer()If fiCount3 = 0 ThenTimer3.Enabled = Falsecmd3.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount3 = fiCount3 - 1cmd3.Caption = Str(fiCount3)End IfEnd Sub

Private Sub Timer4_Timer()If fiCount4 = 0 ThenTimer4.Enabled = Falsecmd4.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount4 = fiCount4 - 1cmd4.Caption = Str(fiCount4)End IfEnd Sub

Private Sub Timer5_Timer()If fiCount5 = 0 ThenTimer5.Enabled = Falsecmd5.Enabled = False

Page 37: Tutorial Guitar Pro 6

fiNumLeft = fiNumLeft - 1ElsefiCount5 = fiCount5 - 1cmd5.Caption = Str(fiCount5)End IfEnd Sub

Private Sub Timer6_Timer()If fiCount6 = 0 ThenTimer6.Enabled = Falsecmd6.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount6 = fiCount6 - 1cmd6.Caption = Str(fiCount6)End IfEnd Sub

Private Sub Timer7_Timer()If fiCount7 = 0 ThenTimer7.Enabled = Falsecmd7.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount7 = fiCount7 - 1cmd7.Caption = Str(fiCount7)End IfEnd Sub

Private Sub Timer8_Timer()If fiCount8 = 0 ThenTimer8.Enabled = Falsecmd8.Enabled = FalsefiNumLeft = fiNumLeft - 1ElsefiCount8 = fiCount8 - 1cmd8.Caption = Str(fiCount8)End IfEnd Sub

Private Sub Timer9_Timer()If fiCount9 = 0 ThenTimer9.Enabled = Falsecmd9.Enabled = FalsefiNumLeft = fiNumLeft - 1

Page 38: Tutorial Guitar Pro 6

ElsefiCount9 = fiCount9 - 1cmd9.Caption = Str(fiCount9)End IfEnd Sub

Private Sub tmrEndGame_Timer()If fiNumLeft = 0 Thencmd1.Caption = “X”cmd2.Caption = “X”cmd3.Caption = “X”cmd4.Caption = “X”cmd5.Caption = “X”cmd6.Caption = “X”cmd7.Caption = “X”cmd8.Caption = “X”cmd9.Caption = “X”

Timer1.Enabled = FalseTimer2.Enabled = FalseTimer3.Enabled = FalseTimer4.Enabled = FalseTimer5.Enabled = FalseTimer6.Enabled = FalseTimer7.Enabled = FalseTimer8.Enabled = FalseTimer9.Enabled = False

frmGameOver.Visible = TruetmrEndGame.Enabled = FalseEnd IfEnd Sub

frmAbout :

Option Explicit

‘ Reg Key Security Options…Const READ_CONTROL = &H20000Const KEY_QUERY_VALUE = &H1Const KEY_SET_VALUE = &H2Const KEY_CREATE_SUB_KEY = &H4Const KEY_ENUMERATE_SUB_KEYS = &H8Const KEY_NOTIFY = &H10Const KEY_CREATE_LINK = &H20

Page 39: Tutorial Guitar Pro 6

Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + _KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + _

KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROL

‘ Reg Key ROOT Types…Const HKEY_LOCAL_MACHINE = &H80000002Const ERROR_SUCCESS = 0Const REG_SZ = 1 ‘ Unicode nul terminated stringConst REG_DWORD = 4 ‘ 32-bit number

Const gREGKEYSYSINFOLOC = “SOFTWARE\Microsoft\Shared Tools Location”Const gREGVALSYSINFOLOC = “MSINFO”Const gREGKEYSYSINFO = “SOFTWARE\Microsoft\Shared Tools\MSINFO”Const gREGVALSYSINFO = “PATH”

Private Declare Function RegOpenKeyEx Lib “advapi32″ Alias “RegOpenKeyExA” (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, ByRef phkResult As Long) As LongPrivate Declare Function RegQueryValueEx Lib “advapi32″ Alias “RegQueryValueExA” (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByVal lpData As String, ByRef lpcbData As Long) As LongPrivate Declare Function RegCloseKey Lib “advapi32″ (ByVal hKey As Long) As Long

Private Sub cmdSysInfo_Click()Call StartSysInfoEnd Sub

Private Sub cmdOK_Click()Unload MeEnd Sub

Public Sub StartSysInfo()On Error GoTo SysInfoErr

Dim rc As LongDim SysInfoPath As String

‘ Try To Get System Info Program Path\Name From Registry…If GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFO, gREGVALSYSINFO, SysInfoPath) Then‘ Try To Get System Info Program Path Only From Registry…ElseIf GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFOLOC, gREGVALSYSINFOLOC, SysInfoPath) Then‘ Validate Existance Of Known 32 Bit File VersionIf (Dir(SysInfoPath & “\MSINFO32.EXE”) <> “”) Then

Page 40: Tutorial Guitar Pro 6

SysInfoPath = SysInfoPath & “\MSINFO32.EXE”

‘ Error - File Can Not Be Found…ElseGoTo SysInfoErrEnd If‘ Error - Registry Entry Can Not Be Found…ElseGoTo SysInfoErrEnd If

Call Shell(SysInfoPath, vbNormalFocus)

Exit SubSysInfoErr:MsgBox “System Information Is Unavailable At This Time”, vbOKOnlyEnd Sub

Public Function GetKeyValue(KeyRoot As Long, KeyName As String, SubKeyRef As String, ByRef KeyVal As String) As BooleanDim i As Long ‘ Loop CounterDim rc As Long ‘ Return CodeDim hKey As Long ‘ Handle To An Open Registry KeyDim hDepth As Long ‘Dim KeyValType As Long ‘ Data Type Of A Registry KeyDim tmpVal As String ‘ Tempory Storage For A Registry Key ValueDim KeyValSize As Long ‘ Size Of Registry Key Variable‘————————————————————‘ Open RegKey Under KeyRoot {HKEY_LOCAL_MACHINE…}‘————————————————————rc = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey) ‘ Open Registry Key

If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ‘ Handle Error…

tmpVal = String$(1024, 0) ‘ Allocate Variable SpaceKeyValSize = 1024 ‘ Mark Variable Size

‘————————————————————‘ Retrieve Registry Key Value…‘————————————————————rc = RegQueryValueEx(hKey, SubKeyRef, 0, _KeyValType, tmpVal, KeyValSize) ‘ Get/Create Key Value

If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ‘ Handle Errors

Page 41: Tutorial Guitar Pro 6

If (Asc(Mid(tmpVal, KeyValSize, 1)) = 0) Then ‘ Win95 Adds Null Terminated String…tmpVal = Left(tmpVal, KeyValSize - 1) ‘ Null Found, Extract From StringElse ‘ WinNT Does NOT Null Terminate String…tmpVal = Left(tmpVal, KeyValSize) ‘ Null Not Found, Extract String OnlyEnd If‘————————————————————‘ Determine Key Value Type For Conversion…‘————————————————————Select Case KeyValType ‘ Search Data Types…Case REG_SZ ‘ String Registry Key Data TypeKeyVal = tmpVal ‘ Copy String ValueCase REG_DWORD ‘ Double Word Registry Key Data TypeFor i = Len(tmpVal) To 1 Step -1 ‘ Convert Each BitKeyVal = KeyVal + Hex(Asc(Mid(tmpVal, i, 1))) ‘ Build Value Char. By Char.NextKeyVal = Format$(”&h” + KeyVal) ‘ Convert Double Word To StringEnd Select

GetKeyValue = True ‘ Return Successrc = RegCloseKey(hKey) ‘ Close Registry KeyExit Function ‘ Exit

GetKeyError: ‘ Cleanup After An Error Has Occured…KeyVal = “” ‘ Set Return Val To Empty StringGetKeyValue = False ‘ Return Failurerc = RegCloseKey(hKey) ‘ Close Registry KeyEnd Function

frmGameOver :

Private Sub cmdOK_Click()frmGameOver.Visible = FalsefiCount1 = 10fiCount2 = 10fiCount3 = 10fiCount4 = 10fiCount5 = 10fiCount6 = 10fiCount7 = 10fiCount8 = 10fiCount9 = 10fiScore = 0frmGames.TxtScore.Text = “0″fiLastPressed = 0fiNumLeft = 9

Page 42: Tutorial Guitar Pro 6

’set initial start speeds for each timerfrmGames.Timer1.Interval = 1000frmGames.Timer2.Interval = 1000frmGames.Timer3.Interval = 1000frmGames.Timer4.Interval = 1000frmGames.Timer5.Interval = 1000frmGames.Timer6.Interval = 1000frmGames.Timer7.Interval = 1000frmGames.Timer8.Interval = 1000frmGames.Timer9.Interval = 1000

End Sub

Buatlah game dengan format *.exe dengan cara klik file kemudian klik Make Project1.exe