我有一个包含3列的VirtualTreeView(如果重要的话,列标题是不可见的)。
当我按F2(启动编辑器的默认键)编辑节点时,它会编辑列0中的节点。如何将其切换到第1列中的编辑节点?
类似于这个代码的东西,但对于F2键:
VST.EditNode(VST.GetFirstSelected(), 1);
您必须在TreeOptions.SelectionOptions
中设置toExtendedFocus
才能聚焦列,然后使用F2或再次单击选定的单元格更改为编辑模式。
如果要使用键盘进行导航,还必须将toGridExtensions
设置为TreeOptions.MiscOptions
。
为了防止某些列被编辑,您必须实现树视图的OnEditing
事件,并将不应编辑的列的Allowed
设置为False
。
您也可以将这些列的coAllowFocus
从Options
中排除,以防止它们聚焦(从而使它们不可编辑)。
附言:我将建议在VTV上添加coEditable
到TVTColumnOption
。