Saya membuat sebuah program dengan bahasa Basic (di Gambas <-- semacam VB di Linux). Listing code nya seperti ini :
PRIVATE mmmmTag AS String[] PRIVATE bTag AS String[] PRIVATE eTag AS String[] 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) '==== Bagian 1 mmmmTag = NEW String[nmatVal] mmmmTag[i] = ValmmmmTag bTag = NEW String[nmatVal] bTag[i] = ValBTag eTag = NEW String[nmatVal] eTag[i] = ValEtag '===== Bagian 2 mmmmTag.Add(ValmmmmTag) bTag.Add(ValBtag) eTag.Add(ValETag) END PUBLIC SUB fungsiKedua() FOR i = 0 TO (kunci-1) STEP 1 '## variabel kunci diberikan di fungsi main, dan bisa diakses secara global FormLain.TeksKeterangan = mmmmTag[i] & bTag[i] & eTag[i] NEXT END Masalahnya gini, ketika yang dipake di fungsi tambahArrayMtname() adalah Bagian 1, variabel bisa terisi. Tetapi di fungsiKedua() array yang bisa diakses hanya array terakhir (array dengan index terbesar). Array dengan index yang lain tidak bisa diakses. Sementara jika Bagian 2 yang digunakan : Error NULL Object. Jadi, sebenarnya jika di atas sudah didefinisikan variabel dengan tipe String[], bagaimana cara mengisi array tadi dengan benar? Kemudian walaupun didefinisikan diluar semua fungsi (berarti aksesnya global), mengapa hanya index terakhir yang bisa diakses? || Okto Silaban http://okto.silaban.net || KMTF-UGM : http://kmtf.ft.ugm.ac.id --------------------------------- Everyone is raving about the all-new Yahoo! Mail beta. [Non-text portions of this message have been removed]