Membuat program windows dengan "windows.h"

Untuk membuat program berbasis windows dengan Code Block kita bisa melakukannya dengan meng-klik File->New->Project sehingga muncul dialog seperti berikut ini :

 
Pilih saja "win32 GUI Project" dari pilihan jenis-jenis project yang tersedia supaya lebih mudah untuk membuat windows kosong tanpa tombol. Kita bisa mengedit dan menambahkan tombol-tombol dalam kode program yang kita inginkan nanti. Klik OK setelah memilih atau klik dua kali project yang dipilih. Jika muncul dialog seperti berikut ini klik Next.


Selanjutnya akan muncul dialog seperti di bawah ini.
Pilih saja Frame based, dan klik next sehingga tampil dialog seperti di bawah ini.
Pilih Folder dan isi nama project sesuai keinginan anda. Pada gambar di atas anda bisa melihat, saya membuat project dengan nama "windows" di folder "E:\cobaaaa". Jika anda sudah selesai menentukan Folder dan nama file anda silakan klik next. Pada dialog berikutnya anda akan bisa memilih compiler dan anda bisa memilih akan menggunakan "debug" atau tidak. Untuk saat ini, biarkan apa adanya dan klik Finish.


Jika anda sudah klik Finish seharusnya ada project baru yang bisa anda lihat dan klik di sebelah kiri IDE anda. Jika anda klik atau klik ganda project "windows" kemudian klik "source" di samping kiri IDE anda, anda akan menemukan file "main.cpp". Jika anda buka "main.cpp" anda akan menemukan file tersebut sudah berisi kode program yang anda butuhkan untuk membuat program sederhana berbasis windows.

Sekarang coba coba build dan run/jalankan program anda. Untuk melakukan build dan menjalankan project anda, anda bisa klik Build->Build and run atau anda bisa tekan F9. Program yang dihasilkan adalah windows kosong seperti di bawah ini.

Mari kita coba Ubah sedikit kode programnya. Tapi sebelumnya tutup dulu program yang sudah anda jalankan. :D

Kita akan mengubah judulnya. Periksa kode program anda dan cari bagian kode program seperti yang ada di gambar di bawah ini.

Ganti "Code::Blocks Template Windows App" dengan "Programku".

Rebuild project yang sudah kita ubah dengan klik Build->Rebuild, kemudian jalankan dengan klik Build->Run dan perhatikan hasilnya. Apa bedanya? Bedanya ada pada nama Caption windows yang sebelumnya "Code::Blocks Template Windows App" menjadi "Programku".

Anda bisa mengubah bagian-bagian dari pemanggilan fungsi CreateWindowEx dan melihat perubahan yang terjadi pada windows anda untuk mempelajari kode program tersebut. Misalnya anda bisa mengubah panjang dan lebar awal window menjadi 600 pixel dan 800 pixel dengan mengubah parameter fungsi yang berkaitan dengan dengan panjang dan lebar sehingga pemanggilan fungsinya jadi seperti di bawah ini.




CreateWindowEx (
           0,                   /* Extended possibilites for variation */
           szClassName,         /* Classname */
           "Programku",       /* Title Text */
           WS_OVERLAPPEDWINDOW, /* default window */
           CW_USEDEFAULT,       /* Windows decides the position */
           CW_USEDEFAULT,       /* where the window ends up on the screen */
           800,                 /* The programs width */
           600,                 /* and height in pixels */
           HWND_DESKTOP,        /* The window is a child-window to desktop */
           NULL,                /* No menu */
           hThisInstance,       /* Program Instance handler */
           NULL                 /* No Window Creation data */
           );


Kalau anda perhatikan dengan baik, anda tidak akan menemukan fungsi main seperti pada program dengan bahasa C atau C++ pada umumnya., karena fungsi utama pada program berbasis windows yang menggunakan "windows.h" adalah "WinMain".

Selain itu ada biasanya minimal ada satu satu fungsi lain yang digunakan untuk meng-handle pesan dan event yang terjadi pada windows utama.

Ini cuma sekedar contoh bahwa Bahasa C maupun C++ bukan hanya bisa digunakan untuk membuat program berbasis console atau terminal, tapi juga bisa digunakan untuk membuat program berbasis windows. Untuk pembahasan lebih lengkap tentang pemrograman dengan menggunakan header "windows.h" dan fungsi yg tersedia dalam header tersebut anda bisa cari dari sumber lain. :)