Kamis, 05 April 2012

Control ActiveX Form / Windows Region


Artikel ini bisa didownload di scribd.com dengan link http://adf.ly/72BoE

Dalam bab ini akan membahas masalah Control Activex pada form, dimana nanti dijelaskan mengenai jenis-jenis manipulasi form, cara penerapannya pada form, beserta contoh program sehingga tampilan form bisa menarik.

PENGENALAN WINDOWS REGION
1.1 Sejarah
Region adalah “wilayah/daerah” pada form dalam Windows. Manipulasi region pada Visual Basic ini menggunakan Library Gdi32.dll, didalam library Gdi32.dll, menyediakan API untuk memanipulasi region seperti: membuat region kotak, elips, polygon, dsb. Selain membuat region, Library ini juga bisa untuk menggabungkan antara region yang satu dengan yang lain. Manipulasi form ini pada dasarnya bertujuan membentuk form selain bentuk default dari windows. Dengan API region ini kita bisa menciptakan style form yang berbeda.
1.2 Windows Form Region
API manipulation region terbagi menjadi beberapa function untuk memanipulasi sebuah form yang mana setiap fungsi memiliki fungsi yang berbeda, jenis-jenisnya yaitu:
CombineRgn
CreateEllipticRgn
CreateEllipticRgnIndirect
CreatePolygonRgn
CreatePolyPolygonRgn
CreateRectRgn
CreateRectRgnIndirect
CreateRoundRectRgn
OffsetRgn
PathToRegion
PtlnRegion
Pembahasan pertama dalam manipulasi form ini kita akan menggunakan kontrol ActiveX adalah membuat form menjadi berbentuk elips. Di sini kita akan menggunakan 4 fungsi dari API
Windows,yaitu:
  • CreateEllipticRgn untuk membentuk objek baru berbentuk elips/bulat.
  • SetWindowRgn untuk mengubah bentuk form sesuai objek yang telah kita bentuk sebelumnya.
  • DeleteObject untuk menghapus objek yang telah kita bentuk dari fungsi pertama.
  • CreateRectRgn untuk membentuk objek sesuai bentuk form semula.
Cara penulisan CreateEllipticRgn dan CreateRectRgn :
Variabel (bertype long) = CreateEllipticRgn(x1, y1, x2, y2)
Variabel (bertype long) = CreateRectRgn(x1, y1, x2, y2)

Keterangan:
- x1 = koordinat x pojok kiri atas lingkaran
- y1 = koordinat y pojok kiri atas lingkaran
- x2 = koordinat x pojok kanan bawah lingkaran
- y2 = koordinat y pojok kanan bawah lingkaran
Cara penulisan SetWindowRgn :
SetWindowRgn(handle, variabel, True)
Handle di sini maksudnya adalah handle dari form ataupun kontrol lainnya yang akan diubah atau disesuaikan bentuknya
(untuk form yaitu Form.hwnd).
Sintaks untuk DeleteObject adalah:
DeleteObject(variabel). Oleh karena form kita berubah bentuk menjadi elips, kita akan kehilangan bar caption dari form sehingga akan menyulitkan kita untuk menggeser form kita yang tidak memiliki bar caption. Oleh sebab itu supaya dapat menggesernya maka kita menggunakan 2 fungsi API, yaitu SendMessage untuk mengirim pesan tertentu ke window untuk suatu memanggil proses tertentu dari Windows dan fungsi kedua, yaitu ReleaseCapture untuk menimbulkan proses tombol mouse.
Keuntungan penggunaan ActiveX di sini adalah saat perancangan program setelah ActiveX ini dimasukkan ke dalam form program kita maka form sudah dapat terlihat berbentuk elips sehingga kita
dapat mengatur letak kontrol-kontrol yang lain di dalam form kita tersebut dalam rangka membuat program EXE seperti gambar berikut ini.













Gambar 1. Form Berbentuk Ellips

1.3 Combine Region
Pengembangan teknik selanjutnya dari teknik di atas adalah membuat kontrol yang menyebabkan form kita berbentuk seperti tampilan berikut ini:


Untuk membuatnya, kita memerlukan satu lagi fungsi API, yaitu CombineRgn yang berfungsi menggabungkan region-region yang telah terbentuk sebelumnya berdasarkan pola tertentu. Aturan penggunaannya adalah sebagai berikut:
CombineRgn(h, r1, r2, pola) (italic)
Keterangan:

h = region hasil penggabungan yang harus sudah ada sebelumnya (bisa r1 atau r2)
r1 = region pertama untuk digabungkan.
r2 = region kedua untuk digabungkan
pola = mode yang digunakan dalam operasi penggabungan dan merupakan suatu konstanta.


Macam-macam pola proses dalam fungsi CombineRgn





Ilustrasi combine


Tidak ada komentar:

Posting Komentar