29 March 2011

Atribut "Keypreview" di form untuk capture event akses keyboard sekaligus

Stupid me, fitur simple yang udah ada dari dulu, tapi ga di manfaatin...

Gw seneng bikin aplikasi yang simple, khusus bagian notifikasi, gw pengen, untuk kemudahan pengguna, layar notifikasi, atau lainnya semacam pop-up windows bisa dihilangkan dengan tekan escape.

Aplikasi biasanya dibangun diatas form, dan di atas form banyak komponen2, misal textbox, button, combobox, listbox dsb, untuk bisa bikin form ini menghilang dengan tekan escape, yang gw lakuin dulu, pasang monitor keypress di tiap komponen, karena kan ga tau cursor atau fokus sedang ada di komponen mana.

Gw ga pernah mikir global key event, karena biasanya kan layar notifikasi itu simple2 aja, jadi ya pasang monitor keypress di .. mungkin kurang dari 10 komponen, yang tinggal copy-paste kode nya aja udah cukup.

Nah semalem, gw bikin layar bukan notifikasi tapi layar preview pencetakan dokumen, yang komponennya udah bejibun, mampus aja detek atu atu... googling bentar, ternyataaaaaaaaa.... form (non MDI mainform) itu punya atribut khusus namanya "keypreview" kalau ini di set true, ga perlu kita monitor event keypress di tiap komponen, cukup pasang di form aja...

Ckckck... simple banget, mo nangis, girang nemu trik simple tapi nolong banget kayak gini... hihihi