Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Einfügen in SynEdit geht nicht

  Alt 9. Sep 2007, 15:30
Zum "Ausschneiden" verwendest du die Nachricht WM_CUT, aber in deinem Menü habe ich "Markierten Text löschen" gesehen und dazu verwendest du WM_CLEAR. In beiden Fällen wird der markierte Text entfernt, bei WM_CUT aber zusätzlich in die Zwischenablage kopiert.

Hinter "Alles markieren" steht die Message EM_SETSEL, aber leider wird diese Nachricht laut message prefix nur von Edit Controls verstanden - und SynEdit ist kein Edit-Control. Da hilft nur eine Fallunterscheidung:

Delphi-Quellcode:
procedure TForm1.AllesMarkieren1Click(Sender: TObject);
var
  wc: TWinControl;
begin
  wc := FindControl(GetFocus);
  if wc is TSynEdit
    then TSynEdit(wc).SelectAll
    else SendMessage(wc.Handle, EM_SETSEL, 0, -1);
end;
  Mit Zitat antworten Zitat