Einzelnen Beitrag anzeigen

Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#3

Re: Tastenkombination über VK_xxxxx abfragen

  Alt 3. Apr 2009, 06:27
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 ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat