Bab

Tatasusunan

7

 

   Objektif

Selepas mengikuti bab ini anda dapat :

1)      Mencipta tatasusunan

2)      Mengguna tatasusunan untuk membina item dalam ComboBox

3)      Menginput data dari fail ke dalam tatasusunan

 

Pengenalan

Tatasusunan adalah sejenis pembolehubah yang boleh menyimpan lebih dari satu data bagi setiap pembolehubah. Misalnya anda mencipta pembolehubah “Nama”  untuk menyimpan nama pelajar. Hanya seorang pelajar sahaja boleh disimpan dalam pembolehubah tersebut. Jika anda hendak menyimpan lebih daripada seorang pelajar maka perlulah anda isytiharkan pemboleh ubah “Nama” ini sebagai tatasusunan.

Rajah 7.1 di bawah menunjukkan bagaimana data disimpan dalam tatasusunan.

      Nama

Nama(0)

Ahmad

Nama(1)

Chong

Nama(2)

Raju

Nama(3)

Jamilah

               Rajah 7- 1

Dalam rajah 7.1 di atas Pembolehubah “Nama” dibahagikan kepada lokasi Nama(0) yang menyimpan “Ahmad”, Nama(1) manyimpan “Chong” dan seterusnya Nama(3) menyimpan “Jamilah”. Angka 0 hingga 3 dipanggil indeks bagi tatasusunan Nama.


 

Mengisytihar Pembolehubah Tatasusunan

Pembolehubah tatasusunan “Nama” di atas diisytiharkan seperti di bawah

Dim Nama(4) As String     

‘Jumlah 4 nama yang boleh disimpan

 

Untuk menyimpan nombor katakan markah anda boleh isytiharkan seperti berikut::

Dim Markah(30) As Integer

‘Jumlah 30 markah boleh disimpan

 

 

 

Aktiviti 1 :     Mengguna Tatasusunan Untuk Memasukkan Item Ke Dalam ComboBox

Dalam contoh ini anda akan membina satu ComboBox yang mengandungi empat barangan iaitu  Buku Nota,  Pensil Warna, Pensil dan Pen.

 

 

1.     Bina satu antaramuka (form) berdasarkan Jadual 7-2 dan Rajah 7-2 di bawah:

 

Object

Properties

Form

Name

frmBarang

Caption

Harga Barangan

ComboBox

Name

cboBarang

Text

(Tiada)

Label

Name

lblBarang

Caption

Nama Barangan

                                    Jadual 7 – 2


Text Box:  
Rajah 7- 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.     Dwiklik pada tetingkap Form  frmBarang. Tetingkap kod muncul seperti Rajah 7-3.

 

Rajah 7- 3

 
 

 

 

 

 

 

 

 

 


3.     Taipkan aturcara berikut dalam prosedur Form_Load()

Option Explicit

Dim Barang(4) As String

 

Private Sub Form_Load()

  Dim i As Integer

  'Memasukkan nama barang ke dalam Pembolehubah Barang

  Barang(0) = "Buku Nota"

  Barang(1) = "Pensil Warna"

  Barang(2) = "Pensil"

  Barang(3) = "Pen"

 

  For i = 0 To 3

    cboBarang.AddItem Barang(i)

  Next i

 

End Sub

4.     Laksanakan aturcara tersebut. Tetingkap akan kelihatan seperti Rajah  7-4:

Text Box:  
Rajah 7- 4

 

 

 

 

 

 

 

 

5.     Klik ComboBox untuk melihat senarai barang.

6.     Simpan projek dan form anda dengan nama Barang.

 

 

Bagaimana aturcara ini berkerja?

 

Arahan Dim Barang(4) As String bertujuan mengarahkan komputer menyediakan 4 sel (lokasi) pada pemboleh ubah Barang iaitu Barang(0) hingga Barang(3).

 

Pengisytiharan ini pula dibuat di luar prosedur Form_Load() agar pembolehubah ini juga dikenali  dalam prosedur lain selain prosedur Form_Load().

 

Berikutnya sel-sel ini diumpukkan dengan nilai melalui arahan:

 

Barang(0) = "Buku Nota"

Barang(1) = "Pensil Warna"

Barang(2) = "Pensil"

Barang(3) = "Pen"

 

Seterusnya kandungan pembolehubah pada indeks 0  hingga 3 akan dimasukkan ke dalam ComboBox melalui arahan

 

  For i = 0 To 3

     cboBarang.AddItem Barang(i)

  Next i

        

 

Aktiviti 2:      Mengguna Tatasusunan Untuk Memaparkan Harga Barang

1.      Buka fail Barang yang anda cipta dalam aktiviti 1.

2.      Ubahsuai frmBarang  dengan memasukkan textbox di sebelah ComboBox.

3.      Masukkan label Harga  seperti Rajah 7-5.

Text Box:  
Rajah 7- 5

 

 

 

 

 

 

4.      Tetapkan properties TextBox tersebut seperti di bawah

      Name :   txtHarga

      Text    :   (Tiada).

5.      Dwiklik Form FrmBarang. Tambah aturcara yang ditebalkankan (bold) seperti di bawah:

Option Explicit

Dim Barang(4) As String

Dim Harga(4) As Double

 

Private Sub Form_Load()

Dim i As Integer

'Memasukkan nama barang ke dalam Pembolehubah Barang

Barang(0) = "Buku Nota"

Barang(1) = "Pensil Warna"

Barang(2) = "Pensil"

Barang(3) = "Pen"

Harga(0) = 0.75

Harga(1) = 3.5

Harga(2) = 2.25

Harga(3) = 10.15

For i = 0 To 3

  cboBarang.AddItem Barang(i)

Next I

End Sub

6.      Klik menu View, Object untuk memaparkan form di atas

7.      Dwiklik ComboBox dan taipkan aturcara berikut dalam prosedur seperti di bawah:

Private Sub CboBarang_Click()

  Dim i As Integer

  i = cboBarang.ListIndex

  TxtHarga.Text = Harga(i)

End Sub

8.      Simpan aturcara anda.

9.      Laksanakan aturcara di atas.

 

Bagaimana aturcara ini bekerja?

Semasa anda klik item pertama pada ComboBox pembolehubah  i  akan mengambil nilai 0 berdasarkan arahan i = cboBarang.ListIndex dalam aktiviti 7 di atas.

Seterusnya pembolehubah Harga akan merujuk kepada Harga(0) di mana nilainya ialah 0.75 seperti mana aturcara dalam aktiviti 5.

Berikutnya TextBox bernama TextHarga akan memaparkan kandungan Harga(0) berdasarkan arahan  txtHarga.Text = Harga(i)     

 

   Aktiviti 3    Memasukkan Maklumat ke Dalam Tatasusunan Dari Fail

1.      Buka perisian NotePad.

2.      Taip nama barang dan harga seperti dalam Rajah 7-6.

Rajah 7- 6

 
 

 

 

 

 

 


           

3.      Simpan fail anda dengan nama Barang.txt dalam folder bersama-sama fail-fail aturcara di atas. Tutup aplikasi notepad.

4.      Balik ke Visual Basics dan dwiklik frmBarang dan ubahsuai aturcara yang ada dengan arahan yang ditebalkan di bawah.

Private Sub Form_Load()

Dim i As Integer

'Memasukkan nama barang ke dalam Pembolehubah Barang

Open "c:\KursusVB\Harga.txt" For Input As #1

For i = 0 To 3

Input #1, Barang(i), Harga(i)

Next i

 

For i = 0 To 3

 cboBarang.AddItem Barang(i)

Next i

End Sub

5.      Klik menu File, Save Project As. Simpan fail anda dengan nama  Barang2.vbp untuk menyimpan projek anda dengan nama baru.

6.      Klik menu File, Save Barang.frm As untuk menyimpan form dengan nama baru.. Beri nama form baru dengan Barang2.frm

7.      Laksanakan aturcara anda. Anda akan dapati kandungan ComboBox  sudah berubah.

 

Bagaimana aturcara ini bekerja?

Dalam aturcara baru ini arahan Open "c:\kursusVB\Harga.txt" For Input As #1 mengarahkan komputer membuka fail “c:\KursusVB\Harga.txt” bagi tujuan menginput data dari fail tersebut pada saluran 1.

Arahan Input #1, Barang(i), Harga(i) pada baris berikutnya  mengarahkan mengambil data dari saluran 1 (iaitu data dari Harga.txt) untuk dimasukkan ke dalam pembolehubah Barang dan Harga dari item 0 hingga 3.

 

Penilaian Kendiri

1.      Dalam aktiviti 2 anda telah memasukkan item ke dalam ComboBox dari kod sumber. Manakala dalam aktiviti 3 pula item dimasukkan dari fail text. Apakah kelebihan menggunakan kaedah dalam aktiviti 3 berbanding kaedah dalam aktiviti 2.

2.      Merujuk kepada langkah 5 dalam Aktiviti 2, adakah ComboBox akan memaparkan item jika pengisytiharan tatasusunan dibuat dalam prosedur Form_load () seperti di bawah?

 

Private Sub Form_Load()

 

Dim Barang(4) As String

Dim Harga(4) As Double

 

Dim i As Integer

'Memasukkan nama barang ke dalam Pembolehubah Barang

Barang(0) = "sebuah Buku Nota"

Barang(1) = "1 kotak Pensil Warna"

Barang(2) = "1 Dozen Pensil"

Barang(3) = "1 batang Pen"

Harga(0) = 0.75

Harga(1) = 3.5

Harga(2) = 2.25

Harga(3) = 10.15

For i = 0 To 3

 cboBarang.AddItem Barang(i)

Next i

End Sub

 

Private Sub cboBarang_Click()

  Dim i As Integer

  i = cboBarang.ListIndex

  TxtHarga.Text = Harga(i)

End Sub

Seterusnya adakah TextBox bernama TxtHarga akan memaparkan nilai harga yang terdapat dalam pembolehubah tatasusunan Harga? Jelaskan.

 

Latihan

1.      Ubahsuai aturcara di atas untuk  membina antara muka seperti di bawah bagi mengira jumlah harga barang jika dimasukkan kuantiti barangan tersebut.

 

Text Box:

 

 

 

 

 

2.      Arahan di bawah bertujuan memasukkan imej  buku.jpg  ke dalam  PictureBox yang bernama PicBuku.

Picture1.Picture = LoadPicture("c:\KursusVB\buku.jpg")

Ubahsuai aturcara dalam aktiviti 3  agar apabila pengguna klik ComboBox untuk memilih barang, komputer akan memaparkan harga dan juga gambar barangan tersebut.