// Hiermit kann man
ein Undo in Textboxen (TEdit bis TRichEdit) // Undo-Möglichkeit anzeigen function UndoAnzeige(tce: TCustomEdit): string; var s, n: string; begin if tce.Perform(EM_CANUNDO, 0, 0) = 0 then s := 'nicht ' else s := ''; n := tce.Name; if n <> '' then n := 'bei ' + n + #32; Result := 'Undo ' + n + s + 'möglich.'; end; // Undo durchführen procedure DoUndo(tce: TCustomEdit); begin tce.Perform(EM_UNDO, 0, 0); tce.Selstart := tce.Selstart + length(tce.SelText); tce.Setfocus; end; // Undo sperren (bis zur nächsten Eingabe) procedure UndoStop(tce: TCustomEdit); begin tce.Perform(EM_EMPTYUNDOBUFFER, 0, 0); tce.Setfocus; end; // --- Beispielaufruf für ein Memo --- procedure TForm1.Memo1Change(Sender: TObject); begin Label1.caption := UndoAnzeige(Memo1); end; procedure TForm1.Button4Click(Sender: TObject); begin DoUndo(Memo1); end; procedure TForm1.Button6Click(Sender: TObject); begin UndoStop(Memo1); Label1.caption := UndoAnzeige(Memo1); end; procedure TForm1.FormCreate(Sender: TObject); begin Label1.caption := UndoAnzeige(Memo1); end; |
Zugriffe seit 6.9.2001 auf Delphi-Ecke