Einzelnen Beitrag anzeigen

Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#13

AW: VirtualTreeView Editfelder, ComboBox und andere

  Alt 31. Mär 2016, 20:23
Also das mit der "Enter" Taste funktioniert schon ganz gut.

Delphi-Quellcode:
procedure TEditEditLink.EditKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  ANode : PVirtualNode;
begin
  case Key of
    VK_ESCAPE:
      begin
        Key := 0;
      end;
    VK_RETURN:
      begin
        FTree.InvalidateNode(FNode);
        if (ssShift in Shift) then
          ANode := FTree.GetPreviousVisible(FNode, True)
        else
          ANode := FTree.GetNextVisible(FNode, True);
        FTree.EndEditNode;
        if ANode <> nil then FTree.FocusedNode := ANode;
        Key := 0;
        if FTree.CanEdit(FTree.FocusedNode, FTree.FocusedColumn) then
          TVirtualStringTreeHack(FTree).DoEdit;
      end;
    VK_TAB:
      begin

      end;
    VK_LEFT,
    VK_RIGHT:
      begin

      end;
    VK_UP,
    VK_DOWN:
      begin
        FTree.InvalidateNode(FNode);
        if Key = VK_UP then
          ANode := FTree.GetPreviousVisible(FNode, True)
        else
          ANode := FTree.GetNextVisible(FNode, True);
        FTree.EndEditNode;
        if ANode <> nil then FTree.FocusedNode := ANode;
          Key := 0;
        if FTree.CanEdit(FTree.FocusedNode, FTree.FocusedColumn) then
          TVirtualStringTreeHack(FTree).DoEdit;
      end;
  end;
end;
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat