簡體   English   中英

什么是事件表(wxWidgets)?

[英]What is an event table (wxWidgets)?

究竟什么是事件表,它有什么作用? 我問的是 wxWidgets,但它可能是一個通用的 GUI 編程概念,所以請糾正我。

為簡單起見,事件表告訴了在哪個事件發生時調用哪個 function。

然而,這是一種將事件映射到函數的舊方法。 它不再被推薦,因為它不是很靈活,並且使用宏技巧來完成它的工作。 宏本身在 C++ 中一般不太推薦。

除非你必須堅持 C++03,否則你不應該再使用事件表。 相反,您應該對 C++11 或更高版本中的 New WXWidgets 項目使用 bind 方法。 綁定更靈活,不使用宏。

您也可以在 WXWidgets 教程中找到此建議。 但是,您仍然必須能夠閱讀和理解舊的事件表,因為許多示例已經很久沒有更新了。

一個事件表告訴 wxWidgets map 事件給成員函數。 它應該在 a.cpp 文件中定義。

wxBEGIN_EVENT_TABLE() 

是一個宏的例子

除了其他答案,我想說的是,如果您開始學習 wxWidgets,您應該知道事件表是處理事件的傳統方式,並且使用Bind()是在新代碼。

特別是, Bind()不那么“神奇”,並且不使用任何宏。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM