以编程方式通过PageText在wxNotebook上添加/删除选项卡

时间:2009-05-08 20:46:51

标签: c++ wxwidgets wxnotebook

我需要能够通过每个选项卡上显示的文本/标签以编程方式在wxNotebook上添加和删除选项卡。

在Windows中,使用选项卡控件和标签页,我可以通过键引用每个选项卡。选项卡控件的每个选项卡的文本上都有一个标签页的映射。

2 个答案:

答案 0 :(得分:1)

查看wxNoteBook api

GetPage之类的函数将返回一个wxPanel指针,函数SetPageText将允许您更改标题,而AddPageDeletePage等函数将允许您动态改变页面。

答案 1 :(得分:0)

使用以下帮助器方法将选项卡标签/文本转换为wxNotebookPage的相应索引。获得wxNotebookPage的索引后,可以使用期望页面索引作为参数的所有wxNotebook方法。

int TabTestFrame::GetIndexForPageName( wxString tabText)
{

     int end = Notebook1->GetPageCount();

     wxString selectedtabText = "";

     for ( int i = 0; i < end; i++)
     {

        selectedtabText = Notebook1->GetPageText(i);

        if (tabText == selectedtabText)
            return i;

     }

     return -1;
 }