0

我有一个名为 MyListView 的类,它派生自 wxListCtrl,这个类充当 wxNotebook 的页面。

MyListView* l = new MyListView( m_notebook, -1, m_serverLog, incoming_socket );
m_notebook->AddPage( l, "Log", true );  

在该类中,有时需要更改 wxNotebook 显示的选项卡的标题。

根据文档,这是要使用的功能:

wxNotebook::SetPageText

bool SetPageText(size_t page, const wxString& text)

设置给定页面的文本。

问题是,此时不一定是当前选中的页面。

找出页面当前具有哪个 id 可以通过上述功能识别的最佳方法是什么?

4

1 回答 1

1

从 wxWidgets 2.9.5 开始,您可以使用notebook->FindPage(this)来查找笔记本中页面的索引。在以前的版本中,您可以自己遍历所有笔记本页面以找到您感兴趣的页面(因为FindPage()无论如何这是什么)。

最后,您经常只使用当前可见的页面,在这种情况下,您可以使用notebook->GetSelection()代替。

于 2013-10-03T10:48:14.260 回答