Sunday, 1 March 2009

Komponen Graphic

Komponen-komponen graphic VCL yang didefinisikan di dalam unit Graphics mengenkapsulasi Graphics Device Interface (GDI) Windows (untuk lebih mempermudah menambahkan graphic pada aplikasi Windows Anda). Komponen-komponen graphic CLX yang didefinisikan di dalam unit Qgraphics mengenkapsulasi Qt graphics widget (untuk lebih mempermudah menambahkan graphic pada cross-platform application).

Untuk menggambar graphic dalam aplikasi Delphi, Anda dapat menggambar di atas objek canvas daripada secara langsung menggambar di atas objek. Canvas merupakan properti objek, dan canvas sendiri merupakan objek. Keuntungan utama objek canvas adalah bahwa objek canvas menangani resource secara efektif dan memelihara device-context, sehingga program Anda dapat menggunakan metode-metode yang sama tanpa memperhatikan apakah Anda sedang menggambar di atas screen, printer, atau bitmap atau metafile (drawings di dalam CLX). Canvas hanya tersedia pada waktu runtime.

Catatan untuk VCL: Karena TCanvas merupakan wrapper (pembungkus) resource-manager di sekitar Windows device-context, maka Anda juga dapat menggunakan semua fungsi-fungsi GDI Windows di atas canvas. Properti Handle canvas merupakan device context Handle.

Catatan untuk CLX: TCanvas merupakan wrapper resource-manager di sekitar Qt painter. Properti Handle canvas bertipe pointer pada instance objek Qt painter. Instance pointer ini membolehkan Anda menggunakan fungsi-fungsi Qt graphics library low-level yang membutuhkan instance pointer pada objek painter.

Bagaimana image graphic ditampilkan di dalam aplikasi Anda tergantung pada tipe objek yang canvas-nya Anda gambar. Jika Anda menggambar secara langsung di atas canvas suatu kontrol, maka picture akan ditampilkan dengan segera. Jika Anda menggambar di atas offscreen-image (misalnya canvas TBitmap), maka image tidak akan ditampilkan hingga kontrol meng-copy-nya dari bitmap ke dalam canvas kontrol. Ketika menggambar bitmap dan menugaskannya ke kontrol image, maka image hanya tampak ketika kontrol mempunyai kesempatan memproses pesan OnPaint (VCL) atau event (CLX).

Ketika bekerja dengan graphic, Anda mungkin sering menemui istilah drawing dan painting :

 Drawing merupakan pembuatan elemen graphic spesifik tunggal, seperti line atau shape. Di dalam kode, Anda memberitahu suatu objek untuk menggambar graphic spesifik di tempat tertentu di atas canvas-nya dengan cara memanggil metode drawing canvas.

 Painting merupakan pembuatan keseluruhan tampilan suatu objek. Painting pada umumnya melibatkan drawing. Hal ini sebagai respon terhadap event OnPaint. Suatu objek pada umumnya menggambar beberapa graphic. Contoh, edit box akan menggambar dirinya sendiri dengan cara menggambar segiempat dan kemudian menggambar beberapa teks di dalamnya. Kontrol shape, akan melukis dirinya sendiri dengan menggambar graphic tunggal.

No comments:

Post a Comment

Silahkan tinggalkan pesan