Hallo mleyen,
danke für Deine Antwort. Einzeln bekomme ich das hin mit Deiner Kurzanleitung. Ich habe nur Probleme es in meine Struktur zu übernehmen, da ich mit der Procedure alle Tasten und Tastenkombinationen innerhalb des TreeView's selber behandeln muss. Die Procedure funktioniert auch soweit ganz gut, nur dass ich halt die Tastenkombinationen für die Zwischenablage immer noch ausgesperrt habe. Mein letzter Versuch sieht so aus :
Delphi-Quellcode:
procedure TForm16.OnAppMsg(var Msg: TMsg; var Handled: Boolean);
begin
Handled := False;
if (TV_1.IsEditing) and (TV_1.Tag = 0) then
begin
if (Msg.message = WM_KEYDOWN) and (GetKeyState(VK_CONTROL) > 0) then
begin
case Msg.wParam of
VK_BACK, VK_SHIFT, VK_INSERT, VK_DELETE, 47..91, 96..109 :
begin
Handled := True;
EditedTxt := EditedTxt + chr(Msg.wParam);
NodeEdit := True;
end;
else
if (Msg.wParam = VK_RETURN) and (Msg.lParam <> TVN_ITEMCHANGED) and (not NodeEdit) then
begin
ShowMessage('Bitte vergeben Sie einen Namen');
NodeEdit := False;
tmpNode.EditText;
end;
end;
Handled := False;
end
else
begin
if (Msg.wParam = Ord('V')) and (Clipboard.HasFormat(CF_TEXT)) then
begin
Handled := True;
EditedTxt := EditedTxt + Clipboard.AsText;
NodeEdit := True;
end;
end;
end;
end;
Er springt mir auch in die untere IF-Abfrage rein, nur im TreeView wird es nicht angezeigt. Habe ich da noch einen Denkfehler drin ?