0

ダブルクリックおよび/または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

4

2 に答える 2

0

タイプのイベントをキャッチしてから、 wxTreeCtrl :: EditLabelwxEVT_COMMAND_TREE_ITEM_ACTIVATEDを使用してエディターを起動することはできませんか?

于 2012-10-16T07:03:12.413 に答える
0

F2そのままでは機能しませんwxTreeCtrlwxDataViewCtrlただし、機能します)。それを処理して自分で呼び出す必要がありEditLabel()ます。

ダブルクリックは、アイテムの名前を変更するために使用されることはなく、アイテムをアクティブ化するためにのみ使用されます。名前の変更に有効なのは「スロークリック」です。つまり、ダブルクリックの2回目のクリックとしてカウントされないほど遅くなる、すでに選択されているアイテムのクリックです。これは、標準のWindowsツリービューコントロールでも機能する方法です。wxTreeCtrl

于 2012-10-16T11:13:25.127 に答える