Wednesday, 30 November 2011

Ayo bikin "Win32 Application" (1)

Pernah terbayang membuat program seperti notepad?, program yang satu ini memang sudah tidak asing lagi dari jaman Windows 98 . Biarpun tampilannya sederhana jangan anggap remeh fungsinya, yah apalagi kalau bukan mengetik teks hehehe. Agar dapat membuat program seperti itu, dan tampil secara minimalis serta GUI di Sistem Operasi (SO) Windows, kita perlu berinteraksi dengan Win32 API. Atau biasanya disebut Win32 Application.

Win32 Application adalah program yang mengarah kepada penggunaan WIN32 API (Application Programming Interface) sebagai librarynya. Mengapa dikatakan Win32? Karena ditulis dengan operasi 32-bit , dan dijalankan di SO Windows. Untuk lebih jelasnya pengertian Windows API .

Sebagai permulaan kita awali dengan template pada Code::Blocks, jalankan program Code::Blocks lalu pilih File -> New -> Project -> Win32 GUI Project. Maka akan keluar wizard yang akan membantu kita menentukan lokasi dan tipe dari program Win32 kita (Frame atau Dialog). Tipe yang akan dibuat adalah "Frame Based", seperti gambar berikut :

Gambar 1. Frame Based

Selanjutnya wizard akan menanyakan lokasi penyimpanan, dan metode peng-kompilasian program apakah Debug atau Release, atau keduanya. Pilih keduanya. Lanjutkan sampai finish dan Boom! sederet kode untuk membuat program Win32 sederhana telah tercipta . Lakukan kompilasi dan langsung jalankan (F9). Jika sukses maka anda akan melihat jendela program yang masih kosong, hanya ada tombol Minimize, Maximize, dan Close dipojok atas. Dibanding menghapal satu-satu kode yang amat banyak ini , kita mulai dari yang sederhana yaitu mengubah Caption/Judul program. Judul yang berasal dari template adalah "Code::Blocks Template Windows App". Judul ini diisi pada fungsi CreateWindowEx(), pada parameter ketiga. Silahkan cari lalu ubah menjadi "Latihan Win32" atau dengan kalimat yang diinginkan, lalu kompilasi ulang.

Jika semuanya lancar, kita lanjut ke dua fungsi utama. Yaitu int WINAPI WinMain() dan LRESULT CALLBACK WindowProcedure(). Pada fungsi int WINAPI WinMain(), parameter pertama berfungsi untuk menangani modul program saat dijalankan dan aktif di memory. Parameter kedua menunjuk ke instance sebelumnya, tetapi jika tidak maka akan diabaikan, dan umumnya selalu diabaikan/dilewati (bahkan bernilai NULL). Parameter ketiga adalah string yang mewakili semua item yang digunakan pada baris perintah untuk mengkompilasi aplikasi, katanya sih begitu . Parameter keempat/terakhir berfungsi sebagai pengatur bagaimana program kita akan ditampilkan (melalui fungsi ShowWindow (hwnd, nCmdShow);). Sedangkan LRESULT CALLBACK WindowProcedure(), adalah sebuah prosedur yang wajib pada program kita, karena pengulangan program terjadi disini. Jangan dipikirin dulu yang beginian . Yang penting program kita sudah kita dapat dimodifikasi dan berjalan dengan lancar. Selanjutnya kita akan menambahkan menu seperti File, New, Exit, dsb. So, Happy Coding...

- krofz

No comments:

Post a Comment

Maaf jika komentar anda lama terbitnya ^__^, penulis berusaha OL sesering mungkin. Komentar anda adalah semangat blog ini, dan juga semangat para blogger lainnya. You can use XHTML tags: <a href="" rel="link"> </a>, <strong> </strong>, <b> </b>, <em> </em>, <i> </i>.

Spesial character use :
&lt; for <
&gt; for >


Use Pastebin.com for alternative to display your code :) .

 

back to top

back to top