我的wxWidgets应用程序中有一个函数,可以通过certrain事件(按钮按下)触发。现在我想在这个函数中运行一个列表框的方法,我在另一个面板中,用于显示一些条目等。列表框是在主应用程序类的onInit()方法中实现的。
我的问题是,如何获得对此列表框的引用,以便我可以访问它的打印方法?
答案 0 :(得分:1)
通常,有一个派生自wxWidgets表单的类,您可以在其中完成所有工作。父类设置表单,然后子类可以访问其所有控件,因为它们是父类的成员。
简而言之,您的每个控件都应该是您有权访问的成员变量。
使用wxFormBuilder(或其他图形IDE)可能会有所帮助,因为它们会为您生成代码,为您提供一个可以进行更改的经过验证的框架。
答案 1 :(得分:1)
创建列表框时,您为其分配了一个ID。在FindWindowById
的调用中使用该IDhttp://docs.wxwidgets.org/2.8/wx_wxwindow.html#wxwindowfindwindowbyid
// Construct listbox
wxListBox ( this, ID_LISTBOX );
...
// get pointer to listbox
wxListBox* pListBox = findwindowbyid( ID_LISTBOX )