首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VirtualTreeView中跳过/禁用节点

在VirtualTreeView中跳过/禁用节点
EN

Stack Overflow用户
提问于 2014-12-04 21:30:10
回答 1查看 1K关注 0票数 4

我的VirtualStringTree中有5个节点:

节点4没有标题,应该在用户按VK_DOWN或VK_UP时跳过。

当用户单击它时,它也不应该被选中。

在使用键盘时,我编写了以下代码以跳过上述节点:

代码语言:javascript
复制
if Key = VK_DOWN then
begin
  node := VirtualTree.GetNext(VirtualTree.FocusedNode);
  if not Assigned(node) then Exit;

  data := VirtualTree.GetNodeData(node);
  if data^.Caption = '' then
  begin
    VirtualTree.GetNext(node);
    VirtualTree.FocusedNode := node;
    VirtualTree.Selected[node] := true;
  end;
end
else if Key = VK_UP then
begin
  node := VirtualTree.GetPrevious(VirtualTree.FocusedNode);
  if not Assigned(node) then Exit;

  data := VirtualTree.GetNodeData(node);
  if data^.Caption = '' then
  begin
    VirtualTree.GetPrevious(node);
    VirtualTree.FocusedNode := node;
    VirtualTree.Selected[node] := true;
  end;
end;

问题是,通过单击节点,节点仍能集中注意力。

我试着禁用节点VirtualTree.IsDisabled[node] := true;,但没有成功。

有人知道怎么做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-04 21:34:20

处理OnFocusChanging事件,并将False返回到您选择的节点的Allowed参数。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27304468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档