为什么wxPanel构造函数具有默认的WindowID,而wxBookCtrl构造函数没有?

问题描述

您知道为什么wxPanel构造函数具有认的WindowID但wxBookCtrl的认构造函数需要显式的WindowID吗?我的意思是您在wxWidgets中创建控件对象的方式不一致。例如

wxPanel* panel  = new wxPanel(parent)

但是

wxBookCtrl* book = new wxBookCtrl(parent,wxID_ANY)

这样做有什么好处或要求吗?

谢谢。

解决方法

从某种意义上说,写<Drawer ... some other stuff onClose={() => props.handleDrawerState(props.anchor,false)} > 也是可行的,但是new wxPanel(parent,wxID_ANY)是允许完全省略wxPanel的例外。这是因为您基本上从不希望通过面板的ID绑定到面板的事件,因此您永远不必关心面板的值,而对于其他控件(包括wxID_ANY则更有用)。