Bab 2 Pemrograman Berbasis Region
Region adalah “wilayah/daerah” pada form dalam Windows. Manipulasi region pada Visual
Basic ini menggunakan Library Gdi32.dll. Di dalam 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.
Untuk membuat aplikasi menggunakan konsep region ini memang agak sulit
tapi asyik buat dipelajari, ikuti saja langkah-langkah berikut ini :
Gambar
2.1 Tampilan windows region
1 Buat project baru.
2 Atur properties seperti tabel di
bawah ini.
Atribut
|
Property
|
Value
|
Form
|
Backcolor
BorderStyle
WindowState
|
&H000000C0&
None
Maximized
|
Tabel 2.1 Properties form
3 Masuklah ke bagian
view code untuk memanipulasi sebuah form yang mana setiap fungsi
memiliki fungsi yang berbeda, jenis-jenisnya yaitu:
• CombineRgn : Untuk menggabungkan objek
• CreateEllipticRgn : Untuk membuat bentuk lingkaran
• CreateRectRgn :Untuk
membuat bentuk kotak
• CreateRoundRectRgn : Untuk
membuat bentuk kotak melengkung
• CreatePolygonRgn :
Untuk membuat bentuk polygon
Dan masih banyak lagi, seperti : CombineRgn, OffsetRgn, PathToRegion, PtlnRegion
4 Untuk membuat
manipulasi form tersebut maka harus dibuat sebuah private sub form_load yang terdapat code seperti di bawah ini :
Function
|
Keterangan
|
Variabel (bertype long )= CreateEllipticRgn(x1, y1, x2, y2)
|
-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
|
b1 = CreateEllipticRgn(10, 10, 260, 260)
|
Lingkaran luar
|
b2 = CreateEllipticRgn(30, 30, 240, 240)
|
Lingkaran pemotong b1
|
b3 = CreateRectRgn(90, 60, 115, 205)
|
Kotak huruf P
|
b4 = CreateRoundRectRgn(50, 60, 200, 160, 100, 100)
|
Lingkaran huruf P
|
b5 = CreateRoundRectRgn(50, 80, 175, 140, 50, 50)
|
Lingkaran pemotong b4
|
b6 = CreateRectRgn(50, 60, 115, 205)
|
Tabel 2.2 Function
Create
Fungsi-fungsi di
atas telah dimanupulasi menjadi bentuk simbol lalu lintas “boleh parkir”
5 Setelah beberapa
bentuk dibuat, maka selanjutnya mengkombinasi bentuk-bentuk tersebut dengan code
:
Code Function
|
Keterangan
|
CombineRgn(h, r1, r2, pola) (italic)
|
h = region hasil
penggabungan yang harus sudah ada sebelumnya
(bisa r1 atau r2)
r1 = region
pertama untuk digabungkan.
r2 = region kedua
untuk digabungkan
|
CombineRgn
b4, b4, b5, 4
CombineRgn
b4, b4, b6, 4
CombineRgn
b4, b4, b3, 2
CombineRgn
b2, b1, b2, 4
CombineRgn b2, b2, b4, 2
|
pola = mode yang
digunakan dalam operasi penggabungan dan merupakan suatu konstanta.
|
Tabel 2.3 Function Combine
Macam-macam pola proses dalam fungsi CombineRgn
Konstanta
|
Pola
|
Keterangan
|
1
|
RGN_AND
|
Daerah perpotongan antara
r1 dan r2
|
2
|
RGN_OR
|
Daerah gabungan antara r1
dan r2
|
3
|
RGN_XOR
|
Daerah r1 dan r2 yang
tidak berpotongan
|
4
|
RGN_DIFF
|
Daerah r1 yang tidak
berpotongan dengan r2
|
Tabel
2.4 Pola CombineRgn
6 Selanjutnya untuk
menampilkan hasil kombinasi bentuk-bentuk tersebut dengan menggunakan code :
SetWindowRgn(handle, variabel, True)
Handle di sini maksudnya adalah handle
dari form ataupun
control lainnya yang akan diubah atau disesuaikan bentuknya (untuk form yaitu Form.hwnd).
7 Tekan F5 untuk menjalankan
program. Aplikasi berbentuk simbol rabu-rambu lalu lintas berhasik dibuat.
0 komentar: