Jumat, 11 Maret 2016

Menampilkan Gambar Pada PictureBox Di Visual Basic .Net

Pada kesempatan kali ini saya akan menunjukkan bagaimana cara menampilkan gambar pada PictureBox di Visual Basic .NET.
Terdapat beberapa cara untuk menampilkan gambar pada PictureBox dan disini saya akan memberikan beberapa cara yang saya ketahui serta kelebihan dan kekurangan dalam menggunakan cara tersebut.

Pertama-tama buatlah sebuah project baru dengan memilih File > New > New Project. Kemudian Drag And Drop PictureBox dari jendela Toolbox ke form.




  1. Menampilkan Gambar Dengan Cara Standar
    Yang saya maksud dengan cara standar disini adalah cara yang biasa dilakukan oleh programmer atau developer dan yang dianjurkan oleh MSDN pada artikel
    How to: Set Pictures at Run Time dan How to: Load a Picture Using the Designer

    Kelebihan
    Mudah diimplementasikan terutama bagi programmer/developer pemula.

    Kekurangan
    Ada kemungkinan gambar yang diload/ditampilkan ke PictureBox akan dilock/dikunci untuk digunakan oleh user yang mengakses gambar tersebut, sehingga user lain tidak dapat mengakses  gambar tersebut.



    Menampilkan Gambar Saat Runtime
    - copy file gambar ke folder bin > Debug jika running configuration pada Visual Studio Any CPU, copy file gambar ke bin > x64 > Debug jika x64, copy file gambar ke bin > x86 > Debug jika running configuration x86.
    - Drag And Drop PictureBox dari Toolbox ke Form kemudian klik 2x pada form dan copy coding berikut :

    PictureBox1.Load("image.png")

    atau

    Dim image as Image = Image.FromFile("image.png")
    PictureBox1.Image = image

    Menampilkan Gambar Menggunakan Form Designer

  2. Menampilkan Gambar Dengan Menggunakan MemoryStream
    Cara ini merupakan cara yang paling efektif untuk menampilkan gambar dengan ukuran yang tidak terlalu besar. Selain itu dalam segi performance MemoryStream lebih cepat dibandingkan dengan cara standar. Namun untuk beberapa kondisi tertentu semua tergantung dari jumlah memory dari user. Masalah yang sering ditemui oleh programmer/developer dalam penggunaan cara ini yaitu OutOfMemoryException. Jika Anda ingin menggunakan MemoryStream untuk memuat gambar ke PictureBox sebaiknya Anda memastikan bahwa ukuran gambar tidak terlalu besar. Untuk menggunakan MemoryStream copykan coding berikut :

    Dim stream As IO.MemoryStream = New IO.MemoryStream()
    Dim bmp As Bitmap = New Bitmap("vbnet.jpg.")
    bmp.Save(stream, Imaging.ImageFormat.Jpeg)
    PictureBox1.Image = Image.FromStream(stream)
    stream.Close()