3

我想VirtualStringTree在单击单元格后直接从 编辑单元格(节点)(类似于StringGrid带有选项的 agoEditing:TruegoAlwaysShowEditor:True

我已经设置了选项toEditable:True,但是在第二次单击toEditOnClick:True后组件进入编辑模式(首先是聚焦单元格,其次是编辑)editDelay:0VirtualStringTree

4

2 回答 2

3

我认为没有办法配置您想要的内容,但是您可以使用例如OnFocusChanged事件并使用如下代码手动调用编辑模式:

procedure TForm1.VirtualStringTree1FocusChanged(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex);
begin
  Sender.EditNode(Node, Column);
end;

上述解决方法的问题是即使您通过键盘选择不同的节点也会调用编辑模式,这可能不是您想要的。

于 2014-01-02T11:18:39.973 回答
0

获取事件 OnEditing 并将 Allowed 标志设置为 true。

Procedure TForm1.vtListEditing(Sender: TBaseVirtualTree; Node: PVirtualNode;
  Column: TColumnIndex; var Allowed: Boolean);
begin
  Allowed := true;
end;
于 2014-10-05T14:36:48.423 回答