我有3列的VirtualTreeView(如果重要的话,列标题是不可见的)。
当我按F2(启动编辑器的默认键)编辑节点时,它编辑第0列中的节点。如何将其切换到第1列中的编辑节点?
相当于此代码的东西,但对于F2键:
VST.EditNode(VST.GetFirstSelected(), 1);
答案 0 :(得分:5)
您必须在toExtendedFocus
中设置TreeOptions.SelectionOptions
才能对列进行聚焦,然后使用F2或再次单击选定的单元格更改为编辑模式。
如果您想使用键盘导航,还必须将toGridExtensions
设置为TreeOptions.MiscOptions
。
要阻止修改某些列,您必须实施树视图的OnEditing
事件,并将Allowed
设置为False
,以获取那些不可编辑的列。
您还可以从coAllowFocus
中排除Options
这些列,以防止对其进行聚焦(从而使其无法编辑)。
P.S。我建议在VTV上将coEditable
添加到TVTColumnOption
。