Olay tablolarındaki makroların her birine karşılık gelen bir olay tipi var. Bunlar kendi aralarında bölümlere ayrılır. Ben bu yazıda wxCommandEvent, wxKeyEvent ve wxMouseEvent sınıflarına değineceğim.
- wxCommandEvent: Bu olay sınıfı basit kontrollerin çeşitli olayları hakkında bilgiler içermektedir. Bu olay türünün fonksiyonları kullandığın nesneye göre değişmekte.
Fonksiyonları
· wxCommandEvent::GetClientData :Listbox ve Choice nesnesi için seçim olayında istemci bilgisi pointerını döndürür.
· wxCommandEvent::GetClientObject: Listbox ve Choice nesnesi için seçim olayında istemci nesnesinin pointerını döndürür.
· wxCommandEvent::GetSelection: Listbox ve Choice nesnesiçin seçim olayında seçili olan itemi döndürür.
· wxCommandEvent::IsChecked: Bu fonksiyon CheckBox ve Menu nesneleri ile kullanılır.Seçili ise ture seçili değilse false değerini döndürür.
· wxCommandEvent::SetClientData :Bu olay için istemci verisini ayarlar.
· wxCommandEvent::SetClientObject : Bu olay için istemci nesnesini ayarlar.
Olay Türleri
- wxEVT_COMMAND_BUTTON_CLICKED
- wxEVT_COMMAND_CHECKBOX_CLICKED
- wxEVT_COMMAND_CHOICE_SELECTED
- wxEVT_COMMAND_LISTBOX_SELECTED
- wxEVT_COMMAND_LISTBOX_DOUBLECLICKED
- wxEVT_COMMAND_MENU_SELECTED
- wxEVT_COMMAND_RADIOBOX_SELECTED
- wxEVT_COMMAND_RADIOBUTTON_SELECTED
- wxEVT_COMMAND_COMBOBOX_SELECTED
- wxEVT_COMMAND_ENTER
- wxEVT_COMMAND_KILL_FOCUS
- wxEVT_COMMAND_SET_FOCUS
- wxEVT_COMMAND_RIGHT_CLICK
- wxEVT_COMMAND_LEFT_DCLICK
- wxEVT_COMMAND_TOOL_ENTER
- wxEVT_COMMAND_TOOL_RCLICKED
- wxEVT_COMMAND_TEXT_ENTER
- wxEVT_COMMAND_TEXT_UPDATED
- wxEVT_COMMAND_SLIDER_UPDATED
- wxEVT_COMMAND_SCROLLBAR_UPDATED
- wxEVT_COMMAND_TOGGLEBUTTON_CLICKED
- wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED
- wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGİNG
.h'dosyasında fonksiyonu tanımlayalım
void silButon(wxCommandEvent& event);
.cpp'dosyasında fonksiyonun yazalım
void Nesne BenimSinifim::silButon(wxCommandEvent& event)
{
butonY -=25;
delete event.GetEventObject();
}
Şimdide Dinamik Olay işleyici ( Connect() ) ile olayımızı ekleyelim
Connect(ID_Buton,wxEVT_COMMAND_BUTTON_CLICKED,
(wxObjectEventFunction)&BenimSinifim::silButon);
Bu örnekte wxWidgets Olaylar(Events)-3 yazımın örnek bölümünde verdiğim kodlarla oluşturlan nesnelerin sildirilmesini gerçekleştirdim. Butonlar üzerine tıklanarak TextCtrl'lerde üzerinde her hangi bir değişiklik yapıldığı anda silenecekler.
Hiç yorum yok:
Yorum Gönder