Hi,
wie kann ich verhindern, dass beim Drücken der Taste "Entf" (Delete) der ausgewählte Node sofort gelöscht wird, und statt dessen ein Dialogfeld erscheint?
Ich habe in dem OnKeyAction- und im OnKeyDown-Event jeweils den Code stehen, jedoch erfolglos.
Beim drücken der Backspace-Taste wird der Dialog angezeigt; ich vermute mal, dass die Entf-Taste von Windows anders gehandhabt wird.
Delphi-Quellcode:
OnKeyAction:
if ((Shift = []) and (CharCode = VK_DELETE)) then
if MessageDlg('wirklich löschen?', mtConfirmation,[mbYes, mbNo, mbCancel],0) = mrYes then
Sender.DeleteNode (Sender.FocusedNode);
OnKeyDown:
if (Key = VK_DELETE) or (Key = VK_BACK) then begin
if MessageDlg('wirklich löschen?', mtConfirmation,[mbYes, mbNo, mbCancel],0) = mrYes then begin
Key := VK_DELETE;
VST.EditNode(VST.FocusedNode, VST.FocusedColumn);
SendKeys('{DELETE}', True);
VST.SetFocus;
VST.Selected[Node] := True;
VST.FocusedNode := Node;
end;
end;
Danke und Gruß