Program Visual Basic: Membuat Aplikasi Pembelian Tiket Bioskop

Diposting pada 1.388 views
Ini adalah Soal A Ujian tengah semester saya, Ternyata untuk membuat program memang tidak bisa di bataskan waktu hanya 2 jam saja, karena saya baru bisa menyelesaikan soal ini butuh waktu selama 2 hari, mesti belajar lebih giat jadinya.. huyuuu.. soal dan jawaban bisa di download di sini

Ini Soalnya:
Buat aplikasi Pembelian Tiket Bioskop seperti tampak di bawah ini :

1. Tampilkan judul film pada LblJudulFilm saat user memilih salah satu studio pada OptStudio (buat control array untuk optstudio-nya).

2. Tampilkan pula jam tayang pada pada cboJamTayang berdasarkan studio yang dipilih user.

3. Isi LstHari (Senin s/d Minggu), LstRow (A s/d J), LstSeat (1-10). Pada LstRow dan LstSeat, ganti property Style = 1-CheckBox. User dapat membeli banyak tiket.

4. Saat user meng-klik cmdBeli,

a. Tampilkan total harga pada txtTotHarga (total harga = jumlah tiket * harga tiket pada hari yang dipilih user)

b. Pada FrmDetailTiket, tampilkan judul film pada LblJudulFilmPilih, tampilkan hari dan tanggal pada LblDate, tampilkan jam tayang yang dipilih user pada LblJamTayang, tampilkan harga tiket pada LblHarga berdasarkan harga pada hari yang dipilih user.

5. Munculkan message box “Jumlah uang yang harus dibayar” Pembayaran ada 2 jenis :
a. Jika user memilih OptCash, maka jumlah uang yang harus dibayar = total harga.

b. Jika user memilih OptCreditCard, maka berlaku buy 1 get 1 free tapi tidak berlaku kelipatan. Jumlah uang yang harus dibayar total harga = ( (jumlah tiket-1) * harga tiket). Misal, beli 2 tiket, hanya bayar 1 tiket. Beli 4 tiket, hanya bayar 3 tiket.

6. Tombol cmdCancel digunakan untuk membatalkan transaksi (bersihkan form) dan tombol cmdExit digunakan untuk keluar dari program

7. DESAIN FORM Anda

Penyelesaian Menurut Saya:
1. Kita buat desain awalnya dulu, seperti ini:
Pada pertanyaan no 1, opt studio menggunakan array caranya, cukup pasangkan satu Option Button, kumudian klik kanan pada optionbutton cari coppy kemudian klik kanan paste-kan. maka akan ada peringakatan “do you alredy have a control name ‘option1’.Do you wannt to create a control aray?”. Klik Yes, maka anda akan mendapatkan option button aray lakukan sampai 3 kali.

2. Sekarang kita atur properties nya
label 1
caption: Studio:

label 2
caption:Judul Film :

label 3
caption: LblJudulFilm

label 4
caption:Jam Tayang :

label 5
caption:Hari :

label 6
caption: No Kursi :

label 7
caption:Total Harga : Rp

Frame2
Caption: Detail tiket

label 8
caption: Judul Film Pilihan

label 9
caption: Date :

label 10
caption: Kosongkan
Name:lblDate

label 11
caption: Time :

label 12
caption:kosongkan
name:lblTime

label 13
caption:Price : Rp.

label 14
caption:kosongkan
name:lblPrice

label 15
caption:Normat : Rp 20.000 (senin-kamis)

label 16
caption:Jumat : Rp 30.000

label 17
caption:HTM : Rp 45.000

option1(0) optionbutton
Name: OptStudio
Caption: Studio 1

option1(1) optionbutton
Name: OptStudio
Caption: Studio 2

option1(2) optionbutton
Name: OptStudio
Caption: Studio 3

option1(3) optionbutton
Name: OptStudio
Caption: Studio 4

Combo1
Name:cmbJamTayang

List1
Name: LstHari

List2
Name:LstRow
Style: 1-Checkbox

List3
Name:LstSeat
Style: 1-Checkbox

Command1
Name: cmdBeli
Caption: Beli

Frame1
Caption: Pembayaran

Option2
Name:OptPembayaran
Option: Cash

option3
Name:OptCredit
Caption:Credit

Command2
Name: cmdCancel
Caption: Cancel

Command3
Name: cmdExit
Caption: Exit

maka Hasilnya akan seperti ini:

Untuk masalah tulisan dan ukuran tulisan bisa di sesuaikan dengan keinginan anda sendiri.

3. Sekarang Kita mulai membuat coding
Tampilkan judul film pada LblJudulFilm saat user memilih salah satu studio pada OptStudio2.Tampilkan pula jam tayang pada pada cboJamTayang berdasarkan studio yang dipilih user.Isi LstHari (Senin s/d Minggu), LstRow (A s/d J), LstSeat (1-10). Pada LstRow dan LstSeat, ganti property Style = 1-CheckBox. User dapat membeli banyak tiket

Private Sub OptStudio_Click(Index As Integer)
If OptStudio(0).Value = True Then
LblJudulFilm.Caption = "IRON MAN 2"
cmbJamTayang.List(0) = "14:45"
cmbJamTayang.List(1) = "17:00"
cmbJamTayang.List(2) = "19:15"
cmbJamTayang.List(3) = "21:30"
LstHari.List(0) = "Senin"
LstHari.List(1) = "Selasa"
LstHari.List(2) = "Rabu"
LstHari.List(3) = "Kamis"
LstHari.List(4) = "Jumat"
LstHari.List(5) = "Sabtu"
LstHari.List(6) = "Minggu"
LstRow.List(0) = "A"
LstRow.List(1) = "B"
LstRow.List(2) = "C"
LstRow.List(3) = "D"
LstRow.List(4) = "E"
LstRow.List(5) = "F"
LstRow.List(6) = "G"
LstRow.List(7) = "H"
LstRow.List(8) = "I"
LstRow.List(9) = "J"
For s = 1 To 10
LstSeat.AddItem s
Next

ElseIf OptStudio(1).Value = True Then
LblJudulFilm.Caption = "The Book of Eli"
cmbJamTayang.List(0) = "14:55 "
cmbJamTayang.List(1) = "17:05"
cmbJamTayang.List(2) = "19:15"
cmbJamTayang.List(3) = "21:25"
LstHari.List(0) = "Senin"
LstHari.List(1) = "Selasa"
LstHari.List(2) = "Rabu"
LstHari.List(3) = "Kamis"
LstHari.List(4) = "Jumat"
LstHari.List(5) = "Sabtu"
LstHari.List(6) = "Minggu"
LstRow.List(0) = "A"
LstRow.List(1) = "B"
LstRow.List(2) = "C"
LstRow.List(3) = "D"
LstRow.List(4) = "E"
LstRow.List(5) = "F"
LstRow.List(6) = "G"
LstRow.List(7) = "H"
LstRow.List(8) = "I"
LstRow.List(9) = "J"
For s = 1 To 10
LstSeat.AddItem s
Next

ElseIf OptStudio(2).Value = True Then
LblJudulFilm.Caption = "GREEN ZONE"
cmbJamTayang.List(0) = "14:25 "
cmbJamTayang.List(1) = "16:50"
cmbJamTayang.List(2) = "19:15"
cmbJamTayang.List(3) = "21:40"
LstHari.List(0) = "Senin"
LstHari.List(1) = "Selasa"
LstHari.List(2) = "Rabu"
LstHari.List(3) = "Kamis"
LstHari.List(4) = "Jumat"
LstHari.List(5) = "Sabtu"
LstHari.List(6) = "Minggu"
LstRow.List(0) = "A"
LstRow.List(1) = "B"
LstRow.List(2) = "C"
LstRow.List(3) = "D"
LstRow.List(4) = "E"
LstRow.List(5) = "F"
LstRow.List(6) = "G"
LstRow.List(7) = "H"
LstRow.List(8) = "I"
LstRow.List(9) = "J"
For s = 1 To 10
LstSeat.AddItem s
Next

ElseIf OptStudio(3).Value = True Then
LblJudulFilm.Caption = "HURT LOCKER"
cmbJamTayang.List(0) = "14:25 "
cmbJamTayang.List(1) = "16:50"
cmbJamTayang.List(2) = "19:15"
cmbJamTayang.List(3) = "21:40"
LstHari.List(0) = "Senin"
LstHari.List(1) = "Selasa"
LstHari.List(2) = "Rabu"
LstHari.List(3) = "Kamis"
LstHari.List(4) = "Jumat"
LstHari.List(5) = "Sabtu"
LstHari.List(6) = "Minggu"
LstRow.List(0) = "A"
LstRow.List(1) = "B"
LstRow.List(2) = "C"
LstRow.List(3) = "D"
LstRow.List(4) = "E"
LstRow.List(5) = "F"
LstRow.List(6) = "G"
LstRow.List(7) = "H"
LstRow.List(8) = "I"
LstRow.List(9) = "J"
For s = 1 To 10
LstSeat.AddItem s
Next
End If
End Sub

Saat user meng-klik cmdBeli, Tampilkan total harga pada txtTotHarga (total harga = jumlah tiket * harga tiket pada hari yang dipilih user). Pada FrmDetailTiket, tampilkan judul film pada LblJudulFilmPilih, tampilkan hari dan tanggal pada LblDate, tampilkan jam tayang yang dipilih user pada LblJamTayang, tampilkan harga tiket pada LblHarga berdasarkan harga pada hari yang dipilih user.
Sebelum itu kita inilisiasikan nilainyam klik general:

Dim harga, total, credit As Currency
Dim jumlah As Integer

Kemudian, tuliskan code ini

Private Sub cmdBeli_Click()

lblTime.Caption = cmbJamTayang
lblDate.Caption = LstHari
LblJuduFilmlPilihan.Caption = LblJudulFilm

jumlah = LstSeat
Select Case LstHari.ListIndex
Case 0, 1, 2, 3
harga = 20000
total = jumlah * harga
txtTotalHarga.Text = total
lblPrice.Caption = total
credit = (jumlah – 1) * harga
Case 4
harga = 30000
total = jumlah * harga
txtTotalHarga.Text = total
lblPrice.Caption = total
credit = (jumlah – 1) * harga
Case 5, 6
harga = 45000
total = jumlah * harga
txtTotalHarga.Text = total
lblPrice.Caption = total
credit = (jumlah – 1) * harga
End Select
End Sub

Munculkan message box “Jumlah uang yang harus dibayar” Pembayaran ada 2 jenis :
a. Jika user memilih OptCash, maka jumlah uang yang harus dibayar = total harga.
b. Jika user memilih OptCreditCard, maka berlaku buy 1 get 1 free tapi tidak berlaku kelipatan. Jumlah uang yang harus dibayar = total harga – ( (jumlah tiket-1) * harga tiket). Misal, beli 2 tiket, hanya bayar 1 tiket. Beli 4 tiket, hanya bayar 3 tiket.

Private Sub OptCredit_Click()
MsgBox "Total Harga Yang harus di bayarkan adalah " & vbNewLine & "Rp. " & credit, vbInformation, "Konfirmasi"
End Sub

Private Sub OptPembayaran_Click(Index As Integer)
MsgBox "Total Harga Yang harus di bayarkan adalah " & vbNewLine & "Rp. " & total, vbInformation, "Konfirmasi"
End Sub

Tombol cmdCancel digunakan untuk membatalkan transaksi (bersihkan form) dan tombol cmdExit digunakan untuk keluar dari program

Private Sub cmdCencel_Click()
OptStudio(0).Value = False
OptStudio(1).Value = False
OptStudio(2).Value = False
OptStudio(3).Value = False
LblJudulFilm.Caption = "LblJudulFilm"
LblJuduFilmlPilihan.Caption = "LblJuduFilmlPilihan"
cmbJamTayang.Clear
OptCredit.Value = False
OptPembayaran(0).Value = False
txtTotalHarga.Text = ""
lblDate.Caption = ""
lblTime.Caption = ""
lblPrice.Caption = ""
LstHari.Clear
LstRow.Clear
LstSeat.Clear
End Sub

Private Sub cmdExit_Click()
End
End Sub

32 thoughts on “Program Visual Basic: Membuat Aplikasi Pembelian Tiket Bioskop

  1. @TS :
    di gedung bioskop itu kan,bnyak kursi nya,
    klo ga salah sih 80 kursi, 40 kiri , 40 kanan..
    tiap kursi itu kan juga punya nama masing2, misal nya A1, B4, C8
    jadi misalnya klo ada pelanggan yg mw nnton, tinggal pilih dengan mengklik lokasi kursi nya..
    mohon bantuan.. :d

  2. coding yang ini ada 100 kursi mas.. kalau cuma pngen 80 ya di setting aja.. mau memanjang kesamping atau ke atas…
    kalau memanjang kesamping
    abjadnya dari A-H dan angka 1-10
    .
    di jalankan dulu programnya.. sama seperti itu kuq konsepnya.

  3. txtTotalHarga.Text itu adalah textbox mas…

    jadi
    total = jumlah * harga
    txtTotalHarga.Text = total
    artinya, total itu jumlah kali harga, hasilnya total di tampilin di txtTotalHarga.Text

    coba lihat properties nya, namenya udah sama ga???
    .
    emang erornya apa???

  4. Mbak Opie : Saya Liat ada satu yang gak nyambung (menurut saya) maaf kalau saya yang salah 🙂
    ketika (cmdBeli) di klik
    ada Variabel (Jumlah) code aslinya
    (Jumlah = LstSeat)
    *Ketika hasilnya muncul di (Label Price), (Total Harga) menjadi (LstSeat * Harga Satuan Tiket).
    *Padahal itu kan (Lseat), nomor tempat duduk. bukan jumlah tiket yang mau dibeli.
    jadi hasilnya (Total Harga = Nomor Kursi * Harga Satuan Tiket). Jadi Gak Ada NOMAT kalau begitu…
    Saya coba tambah satu (TextBox), jadi (Jumlah = Text().Text) , (Total = Jumlah * Harga)
    Terima kasih ilmu nya , mbak opie..
    ini email saya : sosisiapakai@yahoo.co.id

  5. met sore gan
    mau nanya gan kok gx bsa running ya gan? kalau di running ada pemberitahuannya kayak gni "run time error "424" stelah aku debug,tapi kok yng digaris kuning lbljudulfilm kira2 salahnya dmna ya gan?

  6. keren konsepnya gan , tapi kalo di delphi 2010 komponen dan codingnya jadi gimana ya. pengen coba buat di delphi nih 🙂

  7. Min ada tutorial yang lebih jelas lagi gak? yaa seperti menampilkan gambarnya atau videonya.. soalnya kalo hanya menunjukan dengan tulisan menurut saya lumayan gak paham sama yang mimin lampirkan sekarang 🙂 terimakasih

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *