Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
Delphi XE2 Professional
|
AW: VirtualTreeView Editfelder, ComboBox und andere
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.
|
|
Zitat
|