【问题标题】:wxPanel double click to allow user type new titlewxPanel 双击允许用户输入新标题
【发布时间】:2015-12-10 10:41:57
【问题描述】:

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

我认为最简单和最清晰的方法是允许通过双击编辑标题,因为双击 wxGrid 允许编辑字段值。 wxNotebook/wxPanel 可以做到吗?

此代码允许在 Panel 的选项卡上精确双击连接:

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

所以我可以用输入新标题的字段来提升窗口,然后将此标题设置为页面。

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

【问题讨论】:

    标签: c++ wxwidgets


    【解决方案1】:

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

    【讨论】:

    • 不给自己制造问题我决定使用wxTextEntryDialog dialog(this, wxT("New tab name: "));
    猜你喜欢
    • 2020-06-14
    • 2019-07-30
    • 2012-04-06
    • 2016-04-01
    • 1970-01-01
    • 2021-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多