Aku make program semacam VB, tapi buat Linux, namanya Gambas. Program nya itu untuk simulasi reaktor nuklir. Masalahnya gini..
Langsung aja ya.., aku punya variabel ini PUBLIC mmmmTag as String[] PUBLIC bTag as String[] PUBLIC eTag as String[] Kemudian, untuk membuat index arraynya, aku bikin fungsi seperti dibawah ini. FUngsi ini dijalankan sebelum fungsi untuk mengisi array dijalankan. public setArray() mmmmTag = NEW String[nmatVal] bTag = NEW String[nmatVal] eTag = NEW String[nmatVal] end Kemudian untuk menambahkan isi array aku buat seperti ini : PUBLIC SUB tambahArrayMtname(OPTIONAL i AS Integer, OPTIONAL ValmmmmTag AS String, OPTIONAL valETag AS String, OPTIONAL ValBtag As String) DIM nmatVal AS Integer nmatVal = Val(nmat.Text) mmmmTag[i] = ValmmmmTag bTag[i] = ValBTag eTag[i] = ValEtag '=== ini untuk mengisi ke ComboBox, mengecek apakah variabelnya berisi ComboBox1.add(mmmmTag[i] & bTag[i] & eTag[i] END Dan ini berjalan baik. Di combo box pun semua isi array tadi bisa masuk ke comboBox. Sementara untuk mengecek hasil isian dari array tadi, saya coba seperti di bawah ini, namun hasilnya masih belum sesuai, hanya array dengan index terbesar saja yang ditampilkan, selebihnya kosong. (script dibawah ini dijalankan dari fungsi lain..) FOR i = 0 TO (Val(nmat.Text) - 1) STEP 1 Message.Info(teks[i]) NEXT Kira - kira dibagian mana ya yang salah..? Apakah untuk mengisi variabel dengan tipe String[] itu kita memang harus menginisiasinya dulu dengan cara seperti ini?? data = new data[indexArray] Pada intinya sih cuma seperti ini: Saya ingin membuat suatu variabel array dengan tipe string. Tetapi jumlah index array nya itu di set dari interaksi dengan program. Jadi, tidak bisa diinisiasi dari awal index array nya. Kemudian, di salah satu fungsi array itu diisi. Dan terakhir, isi dari array itu bisa diakses dari semua fungsi dalam class yang sama. Mohon pencerahannya... regards, Okto Silaban KMTF - UGM http://kmtf.ft.ugm.ac.id
