RPG Fantasy Web Indonesia Forum

Kingdom Services => Level-Up Training Lot => Topik dimulai oleh: Èxsharaèn pada 06 April 2008, 12:23:27

Judul: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:23:27
Atas permintaan stash, aku post juga materi baru mengenai dunia pemrograman, yaitu Lingkungan Pemrograman Visual (LPV). Topik ini membutuhkan pengetahuan dasar mengenai PBO, jadi yang sama sekali belum tahu mengenai PBO silakan baca dulu topik ini (http://forum.rpgfantasy.web.id/index.php?topic=167.0). Belum pernah buat program? Baca dulu topik ini (http://forum.rpgfantasy.web.id/index.php?topic=22.0).

Oh ya, topik ini akan menggunakan Visual Basic 2008 Express Edition. Yang belum punya bisa unduh gratis di situs Microsoft (http://www.microsoft.com/express/download). Topik ini bisa juga dikerjakan menggunakan Visual Basic 2005 ke bawah, namun tentunya akan ada berbagai penyesuaian. Yang masih menggunakan VB 6, mohon maaf, konsepnya agak beda, tapi sedikit-sedikit akan aku berikan petunjuk untuk pengguna setia VB 6.

Kenapa aku menggunakan Visual Basic? Well, bahasa ini adalah bahasa termudah untuk dipelajari, karena sesuai namanya, bahasanya benar-benar "basic" alias dasar, sehingga mudah dimengerti. Bahasa visual lainnya yang cukup populer adalah Delphi.

OK, siap? Tapi, apa sih LPV itu? Apa bedanya dengan pemrograman yang biasanya kita lakukan?
Judul: Apa itu LPV?
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:30:53
Sesuai namanya, pada LPV kita akan bekerja juga pada lingkungan pemrograman visual. Artinya, kita juga akan merancang tampilan antarmuka (user interface) dan melakukan pemrograman berdasarkan masukan pengguna dan apa saja yang terjadi di program kita selama itu. Wah, kok bisa begitu?

Ambil saja contoh program Calculator. Saat kita mengeklik angka, yang muncul adalah angka. Setelah kita mengeklik berbagai angka dan operator (misal saja 1 + 1) lalu kita klik tanda =, akan muncul hasilnya. Itu semua dilakukan dengan LPV, yang menggunakan konsep event-driven programming. Waduh, apa lagi nih? Tenang! Event-driven programming adalah cara membuat program berdasarkan even-even yang terjadi. Even itu sendiri adalah semua hal yang dilakukan pengguna terhadap program kita. Misalnya, mengeklik, menulis, mengubah ukuran jendela, dan lain-lain. Beda kan dengan konsep pemrograman yang selama ini kita lakukan?

Lalu, apakah susah membuat program berbasis even? Jawabannya tidak. Dengan Visual Basic, even-even itu sudah dibuatkan. Kita tinggal pakai saja.

Nah, apa sudah waktunya kita menjalankan VB 2008? Silakan!
Judul: Visual Basic 2008 IDE
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:48:22
Sudah terbuka IDE-nya? IDE adalah lingkungan tempat kita akan melakukan programming nantinya. Kalau kalian tidak mengutak-atik setting apapun, tampilnya mungkin seperti ini:

(http://img221.imageshack.us/img221/6969/04062008010545kf7.th.jpg) (http://img221.imageshack.us/my.php?image=04062008010545kf7.jpg)

Kita biasakan diri dulu dengan IDE VB 2008.

Di sebelah kanan, ada tab bernama Solution Explorer (kalau kebetulan tertutup, aktifkan dari menu View > Solution Explorer. Di tab ini kita akan memanajemen solution kita. Supaya tidak bingung, istilah Solution tidak perlu dihapalkan. Atau, anggap saja solution adalah projek kita (dan memang projek kita nantinya akan terpampang di Solution Explorer). Waduh, apa lagi itu projek? Projek adalah kumpulan berkas-berkas yang diperlukan untuk membuat aplikasi kita (untuk seterusnya, "aplikasi" akan menggantikan istilah "program", karena kita memang akan membuat aplikasi mulai sekarang). Kalau kalian lihat di gambar di atas, di Solution Explorer sudah ada My Project (kebetulan aku sudah buat project) dan Form1.vb. Kita kenalan dengan satu istilah lagi...

Form.

Sederhana saja, form adalah satu jendela tempat kita ingin melakukan apa saja. Aku akan menggunakan istilah "form" mulai dari sekarang. Pada awal mula, form kita masih kosong. Tugas kita adalah membuat form itu menjadi berfungsi sebagaimana aplikasi pada umumnya. Gimana caranya?

1. Menambahkan objek-objek visual.
Objek-objek visual ini di VB dinamakan control. Kalau kalian teliti melihat gambar di atas, di sebelah kiri ada tab yang otomatis sembunyi. Kalau dibuka, isinya adalah semua kontrol yang bisa kita gunakan dalam sebuah form. Contoh kontrol adalah tombol (Button), teks (Label: tulisan biasa, Textbox: tempat pengguna mengetikkan sesuatu), daftar (Listbox), dan lain sebagainya. Kita akan berkenalan pelan-pelan dengan kontrol-kontrol yang banyak digunakan nanti.

2. Menambahkan event pada kontrol.
Pemrogramannya dimulai di sini. Kontrol itu tidak dapat berfungsi apa-apa kalau kita tidak menambahkan event. Contoh! Pada saat tombol = diklik, kita wajib melakukan kalkulasi perhitungan. Nanti kita akan kenal event Button_Click untuk melakukan hal ini. Tenang saja, event tidak wajib dihapal ;)

Siap untuk projek pertama?
Judul: Membuat projek
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:55:28
Untuk memulai membuat sebuah aplikasi, kita membutuhkan projek. Untuk membuatnya:

1. Pilih menu File > New project... atau tekan saja jalan pintas favorit kita, Ctrl + N.

2. Pada jendela yang terbuka, pilih Windows Forms Application.

3. Klik OK. Tunggu beberapa saat. Tab IDE baru akan terbuka dan otomatis mengarah ke Form1.vb. Selamat datang di form pertama kita!

Tampilannya mungkin seperti ini:

(http://img223.imageshack.us/img223/9439/04062008010649bw6.th.jpg) (http://img223.imageshack.us/my.php?image=04062008010649bw6.jpg)

Polos ya? Memang, karena kita belum menambahkan apa-apa. Untuk sekarang, coba buka tab Toolbox dan pilih control apa saja yang menarik perhatian. Sementara ini, fokuskan perhatian pada Common Controls saja. Oh ya, cara menambahkan kontrol ke form ada dua:
1. Klik sekali pada kontrol yang diinginkan, lalu tarik (drag) di form.
2. Klik ganda pada nama kontrol. Kontrol akan otomatis ditambahkan ke form.

OK! Setelah puas bermain-main, ayo kita buat contoh program pertama kita!
Judul: Program pertama!
Ditulis oleh: Èxsharaèn pada 06 April 2008, 01:01:15
Program ini adalah permintaan dari stash. Sederhana saja, di form kita hanya ada satu tombol bertuliskan "Mulai!". Ketika kita mengeklik tombol tersebut, aplikasi kita akan menanyakan, apakah program mau dimulai. Ada dua tombol, yaitu OK dan Cancel. Kalau tombol OK ditekan, akan muncul satu jendela lagi bertuliskan "Apel". Kalau tombol Cancel ditekan, tulisan "Program dibatalkan" akan muncul. Gambarannya seperti ini:

Awal aplikasi kita:
(http://img138.imageshack.us/img138/1161/04062008011339wi6.th.jpg) (http://img138.imageshack.us/my.php?image=04062008011339wi6.jpg)

Setelah tombol Mulai! diklik:
(http://img138.imageshack.us/img138/6688/04062008011351qx7.jpg) (http://imageshack.us)

Hasil tombol OK:
(http://img138.imageshack.us/img138/1753/04062008011430fq8.jpg) (http://imageshack.us)

Hasil tombol Cancel:
(http://img138.imageshack.us/img138/2826/04062008011444wo1.jpg) (http://imageshack.us)
Keren? Mungkin nggak terlalu, tapi untuk pemula, ini keren lho :) Jadi, gimana caranya?
Judul: Tampilan dulu...
Ditulis oleh: Èxsharaèn pada 06 April 2008, 01:10:44
Kita buat tampilan form kita dulu. Caranya:

1. Tambahkan kontrol Button ke form kita. Posisi dan ukurannya bebas.
Masih ingat ya cara menambahkan kontrol ke form? Klik-tarik atau klik ganda, OK?

IDE kita akan menjadi seperti ini:
(http://img137.imageshack.us/img137/6719/04062008011931jk6.th.jpg) (http://img137.imageshack.us/my.php?image=04062008011931jk6.jpg)

2. Ubah teks "Button1" menjadi "Mulai!". Caranya?
Yuk lihat bagian kanan jendela kita. Ada tab Properties? Kalau kebetulan hilang, aktifkan lewat menu View > Properties window atau tekan F4. Properties adalah karakteristik kontrol kita (bahkan form kita juga punya properti sendiri). Nah, pastikan Button kita terpilih. Cari properti Text (di gambar agak ke bawah). Ubah saja ke "Mulai!".

Apakah IDE kalian jadi seperti ini?
(http://img147.imageshack.us/img147/3605/04062008012351wt9.th.jpg) (http://img147.imageshack.us/my.php?image=04062008012351wt9.jpg)

Selesai! Nggak terlalu susah kan berurusan dengan tampilan? Langkah berikutnya adalah membuatkan event untuk aplikasi kita. Bagaimana caranya?
Judul: Coding!
Ditulis oleh: Èxsharaèn pada 06 April 2008, 01:26:16
Nah, sekarang kita buat coding-nya. Untuk membuatkan event pada tombol kita:

1. Klik ganda di tombol kita. Jendela IDE kita akan otomatis beralih ke Code View. Yup, di VB kita akan sering beralih dari Designer View, tempat kita mendesain tampilan antarmuka, dan Code View, tempat seluruh kode pemrograman dilakukan.

IDE kalian tampak seperti ini?

(http://img85.imageshack.us/img85/9274/04062008012913lk7.th.jpg) (http://img85.imageshack.us/my.php?image=04062008012913lk7.jpg)

Waduh, apa saja itu? Jangan gentar dulu. Kelihatannya memang banyak istilah yang tidak kita mengerti, tapi perlahan-lahan kita akan paham dengan sendirinya.

Kode: [Pilih]
Public Class Form1
  ...
End Class

Ini sebabnya aku anjurkan menguasai konsep-konsep PBO terlebih dahulu. VB sejak memasuki era .NET memang beralih menjadi sepenuhnya bahasa yang berbasis objek (seperti Ruby), jadi apapun dalam VB, entah itu form, entah itu kontrol, entah itu variabel, akan dianggap sebagai sebuah objek.

Ini adalah kelas untuk form kita. Form kita tadi namanya Form1, dan kebetulan belum diganti. Dia bersifat publik karena tentu saja kita ingin Form1 bisa diakses pengguna kita kan? Lalu, kok tiba-tiba di dalam kelas kita sudah ada isinya? Apa ini?

Kode: [Pilih]
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    End Sub

Wuih panjangnya :D jangan khawatir, kode ini baru saja dibuatkan VB untuk kita, yaitu saat kita mengeklik ganda tombol kita tadi. Even dasar yang diberikan VB untuk kontrol Button adalah event Click, yaitu even pengeklikan tombol. Merasa tertantang untuk menuliskannya secara manual? Boleh, tapi aku tidak sarankan untuk saat ini ;)

Ayo mulai menulis program kita! Saat mengetik, jangan kaget kalau IDE VB akan sering memunculkan daftar kata kunci sesuai dengan yang apa kita ketik. Di dalam even tadi (kursor kalian akan otomatis ada di dalam even kalau kalian tidak melakukan apa-apa sampai sekarang), ketikkan kode berikut:

Kode: [Pilih]
        Dim intJawab As Integer
        intJawab = MessageBox.Show("Mau dijalankan?", "Tes", MessageBoxButtons.OKCancel)
        If intJawab = vbOK Then
            MessageBox.Show("Apel")
        Else
            MessageBox.Show("Program dibatalkan")
        End If

Jangan khawatir kalau kalian tidak paham apa maksudnya (walaupun kelihatannya mudah dimengerti). Tuliskan saja dulu.

Oh ya, untuk blok tertentu (misalkan blok if, while, for, dsb.), IDE VB akan otomatis membuatkan penutupnya untuk kita, jadi kita tidak perlu khawatir kelupaan menutup sebuah blok. Huruf besar kecil diabaikan untuk kata kunci, VB akan otomatis mengubahnya sendiri menjadi titlecase (hanya huruf pertama yang dibesarkan).

Selesai? Ya! Jalankan aplikasi dengan menekan tombol mirip Play (segitiga hijau), namanya Start Debugging. Debug sendiri adalah proses mencoba aplikasi kita, apakah sudah berjalan dengan keinginan. Jadi, apa aplikasinya sudah sesuai dengan yang stash inginkan?

Untuk yang paranoid membuat kesalahan, berikut kode lengkap untuk aplikasi ini:

Kode: [Pilih]
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim intJawab As Integer
        intJawab = MessageBox.Show("Mau dijalankan?", "Tes", MessageBoxButtons.OKCancel)
        If intJawab = vbOK Then
            MessageBox.Show("Apel")
        Else
            MessageBox.Show("Program dibatalkan")
        End If
    End Sub
End Class
Judul: Kok bisa begitu?
Ditulis oleh: Èxsharaèn pada 06 April 2008, 01:40:51
Tercengang dengan hasilnya? Boleh, tapi jangan lama-lama :D Mudah kan membuat sebuah aplikasi?

Nah, ayo sekarang kita lihat kode kita tadi! Aku harap pengetahuan dasar tentang pemrograman masih melekat kuat di ingatan ya :)

Kode: [Pilih]
Dim intJawab As Integer
Ini adalah pembuatan sebuah variabel. Berbeda dengan Ruby, VB mengenal tipe data variabel, misalkan Integer untuk bilangan bulat, Double untuk bilangan pecahan, String untuk teks, dan lain sebagainya. Sebelum digunakan, variabel harus dideklarasikan lebih dahulu. Caranya adalah dengan kata kunci Dim, yang sebenarnya merupakan singkatan dari Dimension. Masuk akal ya?

Tapi, nama variabelnya kok aneh gitu? Kenapa nggak jawab saja (pada VB, nama variabel kalau dimulai dengan huruf harus huruf kecil)? Boleh saja, namun kita akan cepat lupa dengan tipe data variabel kita. Karena itu, biasakan memberi awalan tipe data pada nama variabel kita (misalkan int untuk Integer, dbl untuk Double, str untuk String, dsb.).

Kode: [Pilih]
intJawab = MessageBox.Show("Mau dijalankan?", "Tes", MessageBoxButtons.OKCancel)
Wah, agak panjang... MessageBox.Show berfungsi menampilkan boks pesan (istilahnya ya "message box") tanpa kita harus repot-repot membuat form tersendiri. Parameter pertama adalah teks yang ingin kita tampilkan. Parameter kedua adalah judul boks pesan kita (kalau diabaikan, berikan string kosong "", jangan benar-benar dikosongi). Parameter ketiga adalah tombol-tombol yang ingin kita tampilkan. Tahu dari mana isinya harus MessageBoxButtons.OKCancel? Apa harus dihapal? Jangan khawatir, waktu mengetik otomatis keluar daftarnya kan? Tinggal pilih yang sesuai :)

Nah, fungsi MessageBox.Show akan mengembalikan sebuah nilai (bertipe Integer) sesuai dengan tombol yang ditekan. Dari nilai yang dikembalikan ini, kita bisa tahu jawaban pengguna. Itulah sebabnya baris berikutnya adalah...

Kode: [Pilih]
If intJawab = vbOK Then
       MessageBox.Show("Apel")
Else
       MessageBox.Show("Program dibatalkan")
End If
Familiar dengan blok ini? Ini adalah blok If. Nah, vbOK adalah konstanta yang disediakan VB untuk merujuk pada nilai yang diberikan fungsi MessageBox.Show kalau yang ditekan adalah tombol OK. Yang iseng menampilkan nilai konstanta vbOK akan mendapatkan nilai 1. Jadi, kalau nilai variabel intJawab kita adalah vbOK, kita tampilkan pesan "Apel" (bentuk tersingkat fungsi MessageBox.Show hanya memiliki satu parameter, yaitu teks yang ingin ditampilkan). Kalau tidak (berarti pasti tombol Cancel yang ditekan, karena tombolnya hanya ada 2), tampilkan pesan "Program dibatalkan."

Ternyata nggak sulit kan?
Judul: Yuk latihan!
Ditulis oleh: Èxsharaèn pada 06 April 2008, 02:04:08
Nah, sebelum lanjut, ada baiknya kita melatih diri untuk semakin terbiasa dengan konsep pemrograman visual. Jangan khawatir, latihannya nggak susah kok!

Buatlah aplikasi dengan tampilan seperti berikut:

(http://img87.imageshack.us/img87/6622/04062008020250tw6.th.jpg) (http://img87.imageshack.us/my.php?image=04062008020250tw6.jpg)

Wah, terlihat susah? Jangan khawatir! Kalau sepertinya susah, anggap saja akar persamaan kuadrat dihitung dari rumus:

A + B - C2

Atau, yang ingin tantangan lebih bisa mengerjakannya seperti biasa dengan rumus:

x = (-B ± sqrt(D)) / (2A), dengan D = B2 - 4AC (sqrt adalah akar kuadrat)

Tampilkan hasilnya di tempat yang bertuliskan Label6 (teksnya terserah).

Beberapa informasi tambahan:

- Untuk mendapatkan nilai dari sebuah Textbox, gunakan properti Text. Contoh:
Kode: [Pilih]
strText = myTextbox.Text
Ingat, properti ini bertipe data String, jadi jika perlu diproses dalam perhitungan aritmatika, ubah dulu tipe datanya seperti diterangkan pada poin berikutnya.

- Untuk mengubah tipe data (casting) dari string menjadi angka, gunakan fungsi CInt (menjadi Integer) atau CDbl (menjadi Double). Sebaliknya, untuk mengubah angka menjadi string, gunakan fungsi CStr.

- Operasi matematika tingkat lanjut (seperti akar kuadrat, pangkat, dll) ada di objek Math. Akar kuadrat adalah Math.Sqrt, sementara pangkat adalah Math.Pow.

- Untuk mengubah teks dari sebuah label, gunakan properti Text. Contoh:
Kode: [Pilih]
myLabel.Text = "Halo!"

Kalau ada kesulitan, silakan tanyakan di sini.

Selamat latihan!
Judul: Re: LPV
Ditulis oleh: Stash pada 06 April 2008, 10:22:08
Exshan, ini jawabanku, aku sudah run, dan hasilnya benar. Coba dicek apa ada bagian yang perlu ditambah atau perlu dikurangi.

Kode: [Pilih]
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        'Define variabel
        Dim dblA As Double
        Dim dblB As Double
        Dim dblC As Double
        Dim dblD As Double
        Dim dblX1 As Double
        Dim dblX2 As Double
        Dim text As String
        Dim text2 As String

        'Ngambil angka dari input user
        text = NilaiA.Text
        dblA = CDbl(text)
        text = NilaiB.Text
        dblB = CDbl(text)
        text = NilaiC.Text
        dblC = CDbl(text)

        'Mencari nilai D
        dblD = Math.Pow(dblB, 2) - 4 * dblA * dblC

        'Nilai x1
        dblX1 = (-dblB + Math.Sqrt(dblD)) / (2 * dblA)

        'Nilai x2
        dblX2 = (-dblB - Math.Sqrt(dblD)) / (2 * dblA)

        'Ubah angka ke string
        text = CStr(dblX1)
        text2 = CStr(dblX2)

        'Nyetak hasil
        Hasil.Text = "Hasilnya: x1 = " & text & ", dan x2 = " & text2
    End Sub

End Class
Judul: Jawaban latihan
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:14:20
Wah, cepat sekali jawabnya :)

Jawabanmu benar, tapi ada beberapa baris yang bisa disingkat. Misalnya, variabel text dan text2 tidak diperlukan, karena sebenarnya kamu bisa melakukan seperti ini:

Kode: [Pilih]
dblA = CDbl(NilaiA.Text) ' dan seterusnya...
Hasil.Text = "Hasilnya: x1 = " & dblX1 & " dan x2 = " & dblX2

Catatan untuk baris terakhir, operasi penggabungan string (concatenation) pada VB bisa dilakukan dengan operator &, atau yang masih nyaman dengan Ruby bisa menggunakan operator +. Lalu, apa bedanya? Operator & akan otomatis mencoba mengubah semua operand menjadi String, sementara operator + mensyaratkan semua operand harus String. Misal:

Kode: [Pilih]
' Kita tahu persis dblX1 dan dblX1 adalah Double, jadi...
Hasil.Text = "Hasilnya: x1 = " & dblX1 & " dan x2 = " & dblX2 ' Valid!
Hasil.Text = "Hasilnya: x1 = " & CStr(dblX1) & " dan x2 = " & CStr(dblX2) ' Valid, tapi operasi CStr tidak diperlukan
Hasil.Text = "Hasilnya: x1 = " + CStr(dblX1) + " dan x2 = " + CStr(dblX2) ' Valid!
Hasil.Text = "Hasilnya: x1 = " + dblX1 + " dan x2 = " + dblX2 ' Invalid! Ini akan menyebabkan kesalahan InvalidCastException

Pada VB, pemberian komentar dilakukan dengan tanda ' dan hanya berlaku satu baris, jadi kalau mau berbaris-baris ya silakan beri tanda ' semua :D

Oh ya, pada jawabanmu ada sedikit error handling yang ditinggalkan, yaitu saat D negatif ;) aplikasi tidak akan error, tapi hasilnya nanti akan menjadi NaN alias Not a Number.

Sebelum lanjut, ada baiknya aku review sintaks-sintaks yang umum digunakan pada VB dan perbandingannya dengan Ruby.
Judul: Review sintaks
Ditulis oleh: Èxsharaèn pada 06 April 2008, 12:53:49
OK, supaya yang baru pertama kali memegang VB tidak kebingungan dengan kata kunci yang tersedia, berikut aku berikan kata kunci yang sering dipakai dalam VB, disandingkan dengan Ruby (coba baca lagi artikel Buat program yuk! (http://forum.rpgfantasy.web.id/index.php?topic=22.0) kalau sudah lupa). Sintaks untuk VB 6 tidak aku berikan karena masih sama, kecuali jika aku memberikan catatan kaki.

Untuk... Ruby VB
Deklarasi variabel N/A Dim namaVariabel As TipeData
Konstanta NamaKonstanta = nilai Const namaKonstanta As TipeData = nilai
Konversi tipe data variabel.to_i, variabel.to_f, variabel.to_s CInt(variabel), CDbl(variabel), CStr(variabel)
Blok If

if kondisi [then]
    ...
[elsif
  ...
else
  
...]
end

if_true if kondisi

(kondisi) ? if_true : if_false

If kondisi Then
   ...
[Else If kondisi2
  ...
Else
  
...]
End If

VB tidak memiliki jalan pintas untuk perintah if_true satu baris seperti pada Ruby.

Blok Unless unless kondisi [then]
  ...
[else
  
...]
end
If Not kondisi Then
   ...
[Else If kondisi2
    ...
Else
  
...]
End If
Blok case case variabel_kontrol
  when kondisi1
    ...
  [else
    
...]
end
Select Case variabel_kontrol
  Case kondisi 1
    ...
  [Case Else
    
...]
End Select
Blok for (range berupa angka) for variabel in range
  ...
end
range: nilai_awal .. nilai_akhir atau nilai_awal ... nilai_akhir
For variabel = nilai_awal To nilai_akhir [Step increment]
    ...
Next
Blok for (range berupa objek) for variabel in range
    ...
end
For Each variabel In range
    ...
Next
Blok while/until

while|until kondisi
  ...
end

loop do
  ...
end

begin
  ...
end while|until kondisi

Do While|Until kondisi
  ...
Loop

While kondisi
  ...
End While

Do
  ...
Loop While|Until kondisi

Komentar # komentar

=begin
komentar banyak baris
=end

' komentar
Tidak ada kata kunci untuk komentar banyak baris.
Metode def nama_metode[(parameters)]
    ...
end
Sub nama_metode([ByVal|ByRef parameter As TipeData, ...])
    ...
End Sub
Fungsi def nama_fungsi[(parameters)]
    ...
  return return_value
 end
Function nama_fungsi([ByVal|ByRef parameter As TipeData, ...]) As ReturnValueDataType
  ...
  Return return_value|nama_fungsi = return_value
End Function
Exception begin
    ...
rescue TipeException => variabel_tampung
    ...
[ensure
    ...]
end
Try
    ...
Catch variabel_tampung As TipeException
    ...
[Finally
  ...]
End Try

Tidak tersedia di VB6.

Deklarasi array arrayku = Array.new
arrayku2 = [...]
Dim arrayku(ukuran) As TipeData
Pengaksesan elemen array arrayku[indeks] arrayku(indeks)

Bingung? Jangan khawatir, pelan-pelan akan aku ulang kembali poin-poin penting, seperti pembuatan metode dan fungsi sendiri, array, perulangan, dan lain-lain.
Judul: Re: LPV
Ditulis oleh: Stash pada 06 April 2008, 05:02:08
Kalau D negatif, kan emang jawabannya pasti bilangan maya, yang ditandai dengan adanya variabel i. Jadi ya wajar kalau programku keluarnya NaN.
Judul: Re: LPV
Ditulis oleh: Èxsharaèn pada 06 April 2008, 10:04:00
Menurut semua orang yang sudah belajar bilangan imajiner, itu wajar kalau D negatif. Tapi, untuk orang awam (anak SMP yang baru belajar persamaan kuadrat misalnya), jelas nggak wajar dong :)

Untuk saat ini, tidak apa-apa jika aplikasi kita memberikan hasil yang sebenarnya betul tapi tampak aneh (semisal "Akar-akarnya NaN dan NaN" karena D negatif). Nanti setelah artikel ini berakhir, aku akan berikan tips bagaimana cara menyusun tampilan antarmuka yang baik, termasuk memberikan pesan-pesan yang ramah pada pengguna (in fact, ini bahkan ada teorinya). Coba bandingkan, mana yang lebih enak didengar dan ramah:

Kutip
Akar-akarnya NaN dan NaN.
dengan
Kutip
Tidak ada akar-akar real.

Untuk yang menginginkan pesan kedua, kode berikut bisa digunakan (pada Sub Button1_Click):

Kode: [Pilih]
' Asumsikan nama Textbox yang digunakan adalah txtA, txtB, dan txtC
' sementara nama label keenam adalah lblHasil
Dim dblA As Double, dblB As Double, dblC As Double, dblD As Double
Dim dblX1 As Double, dblX2 As Double
dblA = CDbl(txtA.Text)
dblB = CDbl(txtB.Text)
dblC = CDbl(txtC.Text)
dblD = Math.Pow(dblB, 2) - 4 * dblA * dblC
If dblD < 0 Then
  lblHasil.Text = "Tidak ada akar-akar real."
Else
  dblX1 = (-dblB + Math.sqrt(D)) / (2 * dblA)
  dblX2 = (-dblB - Math.sqrt(D)) / (2 * dblA)
  lblHasil.Text = "Akar-akarnya adalah " & dblX1 & " dan " & dblX2
End If

Ini masih belum 100% ramah pengguna, karena andaikan penggunanya sangat iseng sehingga salah satu dari Textbox diisi bukan angka (sengaja atau tidak), aplikasi ini akan mengeluarkan Exception. Coba diatasi sendiri :)
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Stash pada 07 April 2008, 06:14:44
Mau nanya. Misal untuk latihan itu, pada awal, mirip dengan contoh apel dulu, jadi tampilan awal cuma ada tombol mulai. Setelah tombol mulai diklik, baru muncul form seperti latihan ini. Bagaimana caranya?
Judul: Bekerja dengan lebih dari 1 form
Ditulis oleh: Èxsharaèn pada 07 April 2008, 12:25:31
Nah, kadang-kadang aplikasi kita cukup kompleks sehingga kita perlu lebih dari satu form. Seperti pertanyaan stash, suatu saat kita perlu memanggil form lain dari suatu form. Bagaimana caranya?

Ini agak beda dengan VB 6 dan VB setelahnya (.NET 2002, 2003, 2005, 2008), jadi aku berikan keduanya. Pertama-tama untuk prioritas tertinggi dulu, VB 2008 ;)

Silakan buat projek baru atau gunakan saja projek sebelumnya.

VB 2008

1. Jika hanya ada satu form, buat saja dulu. Caranya, pilih menu Project > Add Windows Form..., atau klik kanan di nama solution kita dan pilih Add > Windows Form.... Pada jendela yang terbuka, pastikan yang terpilih adalah Windows Form. Beri nama form baru ini dan klik OK.

Diasumsikan dua form yang tersedia adalah Form1 dan Form2. Untuk menyeragamkan diri dengan yang menggunakan projek sebelumnya, saat aplikasi dimulai Form2 yang akan jalan duluan alih-alih Form1. Waduh, gimana caranya?

2. Untuk mengubah form yang akan dibuka duluan saat aplikasi pertama kali berjalan (istilahnya startup form):
a. Klik kanan pada nama solution dan pilih Properties. Tab baru berjudul nama solution kita akan terbuka.
b. Buka tab Application yang ada di sebelah kiri (seharusnya otomatis terpilih).
c. Cari pilihan Startup form dan ganti pilihannya dari Form1 menjadi Form2.
d. Simpan. Sampai tahap ini, coba jalankan. Form2 akan terbuka alih-alih Form1.

3. Buat Form2 menjadi seperti permintaan stash:
a. Berikan satu Button bertuliskan "Mulai." Misalkan namanya kubiarkan Button1.
b. Berikan event Click (masih ingat ya caranya?).
c. Tuliskan kode berikut:
Kode: [Pilih]
Dim frmNext As New Form1 ' ganti Form1 dengan nama form yang akan dibuka
frmNext.Show()
Me.Hide() ' Opsional, kalau mau menyembunyikan Form2

Sampai di tahap ini, coba jalankan. Form2 akan muncul dulu. Saat kita mengeklik tombol Mulai, Form2 akan bersembunyi (kalau baris terakhir kode di atas disertakan) dan Form1 akan muncul. Mudah kan?

Tapi tunggu, saat Form1 ditutup, kenapa seakan-akan IDE VB 2008 hang? Bukannya harusnya keluar dari mode Debugging? Sayangnya, aplikasi kita memang belum ditutup. Ingat Form2 kita? Form itu masih sembunyi dan belum dibebaskan dari memori. Lalu, bagaimana caranya?

4. Untuk memaksa aplikasi keluar saat Form1 ditutup, tambahkan event FormClosed untuk Form1. Caranya:
a. Pindah ke Code View dan pilih Form1.
b. Pada combo box kiri (combo box adalah kotak yang ada panahnya, kalau diklik akan terbuka banyak pilihan; Combobox juga merupakan Common Controls), pilih (Form1 Events). Di sebelahnya, pilih FormClosed.

Sebentar, kok ada event FormClosing? Mungkin ada yang bertanya-tanya demikian. Apa bedanya? Bedanya, FormClosed akan dijalankan setelah form ditutup. FormClosing dijalankan tepat saat form menutup, jadi kita bisa melakukan sesuatu saat form menutup, misalnya memberi pesan, bahkan membatalkan penutupan form (nanti kita akan lihat bagaimana caranya). Untuk sekarang, kita pakai FormClosed.

c. Pada event FormClosed, ketikkan kode berikut:
Kode: [Pilih]
Application.Exit()

Wah, hanya satu baris? Coba saja jalankan. Begitu Form1 ditutup, VB 2008 akan keluar dari mode Debugging.

Selesai! Sekarang giliran VB 6...

VB 6
Caranya berbeda cukup jauh dengan VB 2008. Kita akan lakukan pelan-pelan tahap per tahap.

1. Buat projek baru atau gunakan projek yang sudah ada.
Untuk menambah form baru, pilih menu Project > Add Form... atau klik kanan pada nama projek atau Forms (pada jendela Project) dan pilih Add > Form....

Dengan kondisi yang sama, kita akan buat Form2 sebagai startup form.

2. Untuk mengubah startup form:
a. Klik kanan pada nama projek dan pilih Properties....
b. Pilih tab General.
c. Pada Startup Object, ganti ke Form2.

Coba jalankan dulu. Berhasil?

3. Buat Form2 menjadi seperti permintaan stash:
a. Tambahkan kontrol CommandButton. Asumsi namanya tetap CommandButton1.
b. Berikan event Click.
c. Tuliskan kode berikut:
Kode: [Pilih]
Form1.Show
Me.Hide ' opsional, untuk menyembunyikan Form2

Coba jalankan. Berhasil?

Sama kasusnya seperti VB 2008, saat Form1 ditutup, VB tidak keluar dari mode Debug karena aplikasi kita belum keluar sepenuhnya. Lalu, bagaimana?

4. Untuk menutup aplikasi:
a. Pindah ke Code View untuk Form1.
b. Berikan event Unload. Caranya sama seperti pada VB 2008: di combo box kiri pilih Form dan di kanan pilih Unload.
c. Ketikkan kode berikut:
Kode: [Pilih]
Unload Form2

Coba jalankan. Apa aplikasi menutup saat Form1 ditutup?
Kelemahan cara ini, kalau ada beberapa form yang belum ditutup, kita harus meng-unload-nya manual. Coba cari cara paling efektif untuk mengatasi kelemahan ini.

Bagaimana? Bisa menggunakan lebih dari satu form? Kalau bisa, berarti kalian sudah siap membuat aplikasi yang lebih kompleks. Berikutnya, jika tidak ada pertanyaan, kita akan berkenalan pada beberapa Common Controls yang paling sering digunakan.

Kalau ada pertanyaan, tanyakan sekarang :)

ERRATA
Tadi sempat tertulis:

Dim frmNext As New Form2 ' ganti Form2 dengan nama form tempat Button1 berada

Yang benar adalah:

Dim frmNext As New Form1 ' ganti Form1 dengan nama form yang akan dibuka
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Stash pada 07 April 2008, 01:14:28
Sekarang misal, ada 2 tombol. Kalau tekan tombol A, buka form 3, kalau tekan tombol B, buka gorm 5. Bagaimana caranya?
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 07 April 2008, 01:36:37
Caranya ya sama persis :)

VB 2008:
Kode: [Pilih]
Private Sub ButtonA_Click(...) Handles ButtonA.Click
  Dim frmKu As New Form3
  frmKu.Show()
End Sub

Private Sub ButtonB_Click(...) Handles ButtonB.Click
  Dim frmKu As New Form5
  frmKu.Show()
End Sub

Jadi, intinya untuk membuka form baru, gunakan format ini:

VB 2008:
Kode: [Pilih]
Dim var_bantu As New namaFormYangAkanDibuka
var_bantu.Show()
var_bantu.ShowModal() ' dengan ShowModal, fokus akan tetap pada form yang terbuka

VB 6:
Kode: [Pilih]
namaFormYangAkanDibuka.Show
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Stash pada 07 April 2008, 06:44:09
OK deh, beruntung dierrata, kalau gak, aku bisa pusing 100 keliling... :D

Btw, ajarin dong cara buat tabel, grafik, dan cara ngambil data dari excel. Sori nih mungkin gak ngurut urutan teori yang seharusnya, tapi kebetulan ada program yang mau aku buat, jadi mending langsung loncat ke situ saja :D

Btw, tulis ulang dong cara membuat alignment label jadi center, dan cara membuat teksnya jadi bold, seperti yang tadi aku tanyakan pas chat, untuk pembelajaran member yang lain.
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 07 April 2008, 09:44:10
Wah, sori, tapi berhubung yang kamu minta itu sudah tingkat sangat lanjut, sementara aku pending dulu. Kasihan yang lain, tiba-tiba loncat ke materi yang susah :)

Untuk pertanyaan yang lain aku masih bisa jawab.

A. Mengubah alignment label jadi center:

1. Pastikan properti AutoSize diset ke False, atau alignment-nya tidak akan tampak.

2a. Melalui Designer View:
Ubah properti TextAlign menjadi yang diinginkan (ada 9 posisi, pilih sendiri).
2b. Melalui Code View:
Kode: [Pilih]
namaLabel.TextAlign = ContentAlignment.TopCenter ' ada 9 konstanta, pilih sendiri

B. Membuat teks label menjadi cetak tebal (termasuk style lainnya):

Melalui Designer View:
Perluas properti Font. Silakan set sendiri :)

Melalui Code View:
Kode: [Pilih]
labelku.Font = new System.Drawing.Font(labelku.Font, FontStyle.Bold)
' Untuk lebih banyak style:
labelku.Font = new System.Drawing.Font(labelku.Font, FontStyle.Bold Or FontStyle.Italic)
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Stash pada 07 April 2008, 09:56:33
Hmm... kalau gitu, topik berikutnya apa nih? Cara membuat label dan textbox tersembunyi saat suatu tombol diklik?
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 07 April 2008, 10:33:43
Itu gampang :)

Kode: [Pilih]
labelku.Visible = False

Hampir semua kontrol punya properti Visible.

Sebenarnya, kalau mau utak-atik sendiri, berarti artikel ini selesai sampai di sini :) tapi aku berbaik hati mengenalkan beberapa kontrol yang paling umum digunakan, dan terakhir adalah cara menghubungkan basis data ke aplikasi kita (ini sebenarnya harus masuk artikel Basis Data, tapi aku berikan yang sangat sederhana saja sebagai pengenalan).

Yang penasaran akan jawaban pertanyaan stash yang aku anggap sulit bisa membuka artikel VB 2008 lebih lanjut (http://forum.rpgfantasy.web.id/index.php?topic=464.0).
Judul: Kontrol-kontrol yang lain
Ditulis oleh: Èxsharaèn pada 08 April 2008, 02:32:58
Kontrol yang paling umum digunakan adalah sebagai berikut. Aku urutkan sesuai abjad.

Button
Ini sudah kita gunakan sebelumnya.

CheckBox
Berguna untuk memberikan pengguna pilihan yang jawabannya bisa lebih dari satu (misalkan hobi). Untuk mendapatkan apakah checkbox ini ditandai atau tidak, gunakan properti Checked.

ComboBox
Ini adalah kotak yang punya panah di sebelah kanan, kalau diklik muncul pilihan. Untuk mengisi pilihan, lewat Designer View pilih saja properti Items. Kalau lewat Code View, gunakan perintah namaComboBox.Items.Add(). Untuk mencegah supaya pengguna tidak bisa mengetik pilihan sendiri, ubah properti DropDownStyle. Untuk mendapatkan item yang sedang dipilih, gunakan properti ComboBox.SelectedItem.

DateTimePicker
Pernah kan pakai aplikasi yang bisa memilih tanggal dengan memunculkan kalender? Kontrol inilah yang digunakan untuk maksud tersebut. Tanggal yang bisa dipilih bisa dibatasi dengan properti MaxDate dan MinDate. Untuk mendapatkan tanggal yang dipilih pengguna, gunakan properti Value. Awas, Value bertipe data Date!

Label
Juga sudah kita gunakan :)

LinkLabel
Bentuk khusus dari Label, biasanya dibuat untuk hyperlink.

ListBox
Kontrol ini mirip sekali dengan ComboBox, bedanya kontrol ini berupa daftar. Karena itu, propertinya pun mirip dengan ComboBox. Yang beda mungkin ListBox mengizinkan pemilihan jawaban lebih dari satu (diatur di properti SelectionMode), sehingga kalau item yang terpilih lebih dari satu, gunakan properti SelectedItems. Awas, properti ini berupa array Object, jadi mungkin diperlukan iterasi.

MaskedTextBox
Varian kontrol TextBox, ini digunakan untuk memaksa pengguna memasukkan teks sesuai dengan pola (mask) yang sudah dimasukkan sebelumnya. Misalnya, untuk nomor KTP, formatnya harus 00.0000.000000.0000. Dengan MaskedTextBox, kode untuk memaksa input ini sudah dibuatkan otomatis. Untuk mendefinisikan mask, ubah properti Mask. Nilainya dapat diakses dan diubah dengan properti Value.

MonthCalendar
Varian DateTimePicker, ini cuma kalender bulanannya saja. Kurang lebihnya sama dengan DateTimePicker.

NotifyIcon
Penasaran bagaimana sebuah aplikasi bisa membuat ikon sendiri di sebelah jam di taskbar? Atau memunculkan pesan dalam balon teks? Ini kontrolnya :) Berbeda dengan kontrol visual, kontrol ini (dan beberapa kontrol lain) tidak diletakkan di dalam form, tapi di wadah khusus (coba saja masukkan satu ke form). Setting-nya sederhana, coba diutak-atik sendiri :)

NumericUpDown
Pernah lihat kotak yang punya dua panah di sebelah kanan? Kalau diklik, angkanya naik atau turun? Kontrol ini digunakan untuk maksud tersebut. Penambahan (increment) tiap kali panah diklik bisa diatur di properti Increment, sementara nilainya didapat dari properti Value.

PictureBox
Yang ingin mempercantik tampilan dengan menggunakan gambar bisa menggunakan kontrol ini. Gambar bisa diset pada properti Image.

ProgressBar
Sering kan melihat progress bar selagi kita menunggu sesuatu? Gunakan kontrol ini untuk mendapatkan efek yang sama. Nilai maksimum dan minimum, bisa ditebak, ada di properti Maximum dan Minimum. Pada runtime, jangan lupa ubah selalu nilai ProgressBar dengan properti Value.

RadioButton
Sering juga kan melihat kontrol ini? Ada banyak pilihan, tapi yang bisa dipilih hanya satu? Walaupun terdengar aneh, ini adalah bentuk khusus kontrol CheckBox, jadi tahunya kontrol ini dipilih atau tidak ada di properti Checked. Nah, kalau radio button-nya kebetulan ada banyak, kita harus cek satu per satu. Dari namanya? Tentu repot! Tapi, kalau kebetulan hanya ada satu grup radio button pada form, kita bisa gunakan cara ini:
Kode: [Pilih]
For Each control In Me.Controls
    If TypeOf control Is RadioButton Then
        If control.checked Then
            MessageBox.Show(control.text)
        End If
    End If
Next

Waduh, apa itu??? Bahasa manusianya begini:
Kode: [Pilih]
Untuk setiap kontrol di kontrol form ini (Me.Controls)
    Jika tipe kontrol adalah RadioButton Maka
        Jika kontrol dicek Maka
            ' Mau ngapain di sini? ;)
        Akhir Jika
    Akhir Jika
Lanjut

Sementara itu dulu, selanjutnya kita akan masuk ke Toolbox grup Containers.

Perlu contoh penggunaan kah? Aku harap nggak usah yah, contohnya banyak sekali :P
Judul: Array
Ditulis oleh: Èxsharaèn pada 09 April 2008, 12:42:44
Aku terpaksa kembali ke sintaks dasar VB karena baru ingat ada beberapa perbedaan dengan bahasa lain, seperti yang baru saja ditanyakan stash:

Kutip dari: stash
Misalkan aku punya array arrData(3). Di C++ (dan nyaris semua bahasa pemrograman), elemen terakhir yang bisa aku akses adalah arrData[2]. Di VB, kenapa arrData(3) masih boleh diakses?

Jawabannya:

Kutip dari: MSDN, Array Bounds for Visual Basic 6.0 Users
The number you specify for each dimension in the declaration is the upper bound, and the initial element count is equal to the upper bound plus one.

Bahasa sederhananya, jika ada arrData(3), maka jumlah elemennya adalah 3 + 1 = 4, dan elemen terakhir yang bisa diakses adalah batas atas itu sendiri, yaitu arrData(3). Tentu saja, elemen pertama yang dapat diakses tetap arrData(0).

Lainnya akan kuberikan kalau ingat :P makanya tanya ya kalau ada yang bingung ;)
Judul: Multiple-Document Interface (MDI) Form
Ditulis oleh: Èxsharaèn pada 09 Juli 2009, 07:16:00
Aku tambahkan satu topik baru untuk mendukung permintaan stash di topik Basis Data (http://forum.rpgfantasy.web.id/index.php?topic=168.0).

Pernah nemu program yang bisa menampung banyak jendela? Ingat dengan Word 2003? Gimana caranya kita bisa bikin penampung jendela? Nah, VB punya satu form khusus yang disebut Multiple-Document Interface Form, atau lebih sering dipanggil MDI Form. Form ini biasanya memiliki menu, dan di VB yang lebih baru bisa ada toolbar dan status bar. Lalu, gimana cara pakainya?

VB 2008

Tambahkan form baru seperti biasa, tapi kali ini pilih MDI Parent Form. Beri nama sesukanya, lalu klik Add.
Satu form baru akan terbuka, sudah lengkap dengan menu bar beserta "The Six Brothers" (File, Edit, View, Tools, Windows, dan Help), toolbar, dan status bar. Asyiknya, kode untuk menu-menu yang umum dipakai (terutama di menu Windows) sudah dibuatkan :D

Lha kalau mau bikin menu baru? Klik saja di menu bar, lalu ketikkan nama menu yang diinginkan di kotak yang muncul. Lakukan sesukanya sampai didapat susunan menu yang diinginkan. Kalau mau bikin submenu, klik dulu menu yang akan punya submenu, nanti muncul kotak baru.

Misalkan aku mau menu Tambah Barang, yang akan membuka form frmTambahBarang. Buat menunya, lalu ketikkan kode untuk membuka form baru (masih ingat ya? (http://forum.rpgfantasy.web.id/index.php?topic=463.msg3564#msg3564)). Apa yang terjadi? Form frmTambahBarang memang terbuka, tapi kok di luar MDI form kita? Itu karena kita tidak menyuruh frmTambahBarang agar terbuka di dalam MDI form. Lalu bagaimana caranya? Tambahkan saja kode berikut sebelum membuka form yang diinginkan:

Kode: [Pilih]
formYangAkanDibukaDiDalamMDIForm.MdiParent = Me ' diasumsikan kode ini dipanggil dalam MDI Form

Jalankan ulang. Sekarang form itu pasti akan muncul di dalam MDI form kita. Asyik kan? Silakan berkreasi sendiri dengan menggunakan MDI form ini :D
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: azstreet pada 01 Pebruari 2010, 12:38:53
 :o ada pembelajaran LPV juga yah ternyata  ;)

sayang telat taunya sih >.< untung lulus  :P

btw knp yah crystal report sering hang tanpa sebab  ???  :'(
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 01 Pebruari 2010, 12:51:47
CR berapa? Digabung sama VS berapa? OS?
Judul: Re: Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: azstreet pada 21 Juli 2010, 01:05:00
Wah CR brp lupa.. VS 2003, OS winXP..
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 10:11:08
Tolong bantu ane dong sob... :(
Lagi pusing nih, gmn caranya memasukkan data dari form lain ke form utama? Contohnya isi listview dari form A bila di klik 2 kali maka isi fieldnya akan masuk ke dalam textbox form B....
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 11:36:24
Um kebetulan di komputer tidak ada VB (dan memang sudah pindah ke C#), tapi harusnya cara kerjanya sama (asumsi aplikasinya bukan MDI):

1. Buat satu variabel di tingkat form (istilahnya field) di form pertama.
1a. Kalau ingin menjaga keamanan variabel tersebut, deklarasikan Private, kemudian buatkan properti.
1b. Kalau memang data yang dikirim tidak krusial, deklarasikan Public.
Misalkan saja nama variabelnya x.

2. Ambil data dari form pertama, masukkan ke variabel yang baru saja dibuat.

3. Di form kedua, tinggal panggil form pertama dan akses variabelnya. Ini hanya berlaku kalau form kedua adalah anak dari form pertama. Agak lupa kode-nya, mungkin kira-kira begini:

Kode: [Pilih]
Dim myParent As Form1 ' atau apapun nama form pertama
myParent = Me.Parent
' Dari myParent ini variabel x bisa diakses

Mudah-mudahan bisa (nyobanya di C# sih) :)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 12:34:03
Oh... Ok2, ane coba dulu sob... :D Soalnya ini VB 2008 ane pakenya... ;)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 12:38:37
terus "x"nya di deklarasikan sebagai apa sob? Integer? String? Atau apa? Maaf banyak tanya, soalnya masih pemula bgt di VB 2008... :D
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 12:45:51
Seperlunya, kalau datanya ternyata angka biasa ya Integer, kalau pecahan ya Double, kalau teks ya String :)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 12:52:19
trus "x"nya di taruh dmn? :(
Bingung bgt...
Di form A atau Form B? (Form A yg ad listviewnya, Form B yg ad textboxnya)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 12:57:34
Aku agak nggak ingat struktur form di VB, tapi di Form1.vb (asumsi namanya tetap begitu):

Kode: [Pilih]
Public Class Form1

' ------------------------
' Letakkan di sini
Public x As Integer ' atau bikin Private dan buatkan property-nya
' ------------------------

Public Function Form1()
...
End Function

...
End Class

Ada cara lain sebenarnya, menggunakan bantuan modul. Semua variabel di tingkat modul bisa diakses dari form manapun.
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 01:01:13
itu di form yg mau diisikan isi item listviewnya ya? Alias Form B?
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 01:04:01
Itu di form A (yang ada listview-nya). Form B nanti tinggal ambil nilainya saja :)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 01:18:38
berarti seperti ini ya?
di form B
txtnamab.Text = [form_A].x

di form A
dim x as integer = 0
 ???

EDIT:
Sori diedit dikit, sepertinya ada yang berubah jadi BBCode...
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 01:34:56
Bentar, instal VB 2008 dulu deh, caranya kayanya agak beda dengan C# ini :D
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 01:41:44
oke2... Btw, ada FB nd? Lebih enak di FB rasanya... nanti klo ud jadi bisa lgs sharing di sini... ;D


OK2... Ditunggu ya... ;D[/list]
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 01:49:00
Ada di signature, coba cek di About.me :)
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 03:03:49
Ternyata seperti ini....
(http://C:\Users\IT10\Desktop\wew.png)

kodingnya dibuat seperti ini..
 Private Sub Txtkodeb_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txtkodeb.KeyPress
        If (e.KeyChar = Chr(13)) Then
            If Me.Txtkodeb.Text = "*" Then
                Dim asa As New caribarang
                asa.ShowDialog()
                Txtkodeb.Text = asa.ListView1.SelectedItems(0).Text
                txtnamab.Text = asa.ListView1.SelectedItems(0).SubItems(1).Text
                txtjumlah.Focus()
            End If
        End If
    End Sub

EDIT:
Image-nya kurang tepat, mungkin bisa pakai bantuan imageshack atau yang lain (kebetulan di sini tidak mendukung pengunggahan langsung :))
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 28 November 2011, 03:08:32
Yup, kurang lebihnya seperti itu :) ShowDialog akan menyebabkan fokus pindah ke form berikutnya dan kode berikutnya akan ditahan dulu hingga form yang muncul tadi ditutup.
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 28 November 2011, 03:35:33
ooohhh gtu... okeylah... Sorry sob, ane baru pemula bgt neh ;D

nih gambarnya sob... :D
http://imageshack.us/photo/my-images/28/32196022983248232191402.jpg/

thx ud bantu!  ;D
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: archcorner pada 16 Desember 2011, 09:57:06
Ada yg bisa PHP dengan menggunakan VB net 2008 ga? :(
Lagi ada tugas nih.....
Judul: Re:Lingkungan Pemrograman Visual (LPV)
Ditulis oleh: Èxsharaèn pada 16 Desember 2011, 10:16:09
Maksudnya gimana ya? PHP kan untuk Web, VB.NET untuk desktop :)