wxPanel 双击允许用户输入新标题

wxPanel double click to allow user type new title

我有 wxNotebook 和 wxPanels 列表(作为选项卡列表),我必须允许用户重命名选项卡的标题。

我认为最简单明了的方法是允许双击编辑标题,因为 double-click 在 wxGrid 上允许编辑字段值。 wxNotebook/wxPanel 可以吗?

此代码允许连接精确地双击面板的选项卡:

_mainNotebook->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( mainFormImpl::DClickHandling ), NULL, this );

所以我可以提高 window 字段以输入新标题,然后将此标题设置为页面。

但是如何让用户快速输入它,就像它与 wxGrid 一起工作一样?是否可以?我的搜索一无所获。

任何主要平台都不支持重命名笔记本标签,所以 wxWidgets 也不支持。您可以尝试通过手动创建 wxTextCtrl 并将其放置在正确的位置来自己实现它(您可以查看 wxGrid 实现,它完全在 wxWidgets 本身中完成,作为一个例子)或使用其他一些书籍控件,例如wxListbook 可以像这样表现,因为 wxListCtrl 确实支持就地项目重命名。