重命名wxTreeCtrl项

时间:2012-10-16 01:01:28

标签: wxwidgets

我希望双击和/或F2上的正常重命名

所以:

  new wxTreeCtrl(this,IDC_Tree,wxPoint(-1,-1),wxSize(-1,-1),
    wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT | wxTR_EDIT_LABELS);

双击不重命名。 (它显示父节点的子节点)

F2不重命名

工作是什么

  • 单击节点以选择它
  • 按F2键
  • 再次点击节点 - 现在我可以输入新名称

我认为它完成了这项工作,但我不想向每个用户解释这一点。

wxWidgets v2.9,C ++,windows

2 个答案:

答案 0 :(得分:0)

你能不能只捕获wxEVT_COMMAND_TREE_ITEM_ACTIVATED类型的事件,然后使用 wxTreeCtrl::EditLabel来启动编辑器?

答案 1 :(得分:0)

F2开箱即用wxTreeCtrl不起作用(虽然它适用于wxDataViewCtrl),您需要处理它并自己致电EditLabel()

双击永远不会用于重命名项目,仅用于激活它们。对于重命名有效的方法是“慢速点击”,即点击已经选择的项目迟到足以计算为双击的第二次点击。这是它在标准Windows树视图控件和wxTreeCtrl中的工作方式。