Thema
:
Text vor einem bestimmten Zeichen NICHT löschen
Einzelnen Beitrag anzeigen
DieDolly
Registriert seit: 22. Jun 2018
2.175 Beiträge
#
19
AW: Text vor einem bestimmten Zeichen NICHT löschen
10. Mär 2020, 17:23
Versuchs mal so
zusammenfalten
·
markieren
Delphi-Quellcode:
const
FixedShellDummyStringyThingy = '
shell >
';
procedure
TForm1.FormCreate(Sender: TObject);
begin
Width := 979;
Height := 512;
Memo1.ScrollBars := ssVertical;
Memo1.Align := alClient;
Memo1.WordWrap := True;
Memo1.Clear;
Memo1.Lines.Strings[0] := FixedShellDummyStringyThingy;
Memo1.BevelInner := bvNone;
Memo1.BevelKind := bkNone;
Memo1.BevelOuter := bvNone;
Memo1.BorderStyle := bsNone;
Memo1.Color := clBlack;
Memo1.Font.Size := 12;
Memo1.Font.Color := $00CCCCCC;
Memo1.Font.
Name
:= '
Consolas
';
end
;
procedure
TForm1.Memo1KeyDown(Sender: TObject;
var
Key: Word; Shift: TShiftState);
begin
if
(Key
in
[VK_UP, VK_DOWN])
then
Key := 0
else
if
Memo1.CaretPos.X <= Length(FixedShellDummyStringyThingy)
then
Key := 0;
end
;
procedure
TForm1.Memo1KeyPress(Sender: TObject;
var
Key: Char);
var
CurrentLineIndex: Integer;
CurrentLineStr:
string
;
begin
CurrentLineIndex := Memo1.CaretPos.Y;
CurrentLineStr := Memo1.Lines.Strings[CurrentLineIndex];
if
(Key = #8)
and
AnsiSameText(CurrentLineStr, FixedShellDummyStringyThingy)
then
begin
Key := #0;
end
else
begin
if
(Key = #13)
then
begin
Key := #0;
Memo1.Lines.Add(FixedShellDummyStringyThingy);
end
else
begin
end
;
end
;
end
;
Miniaturansicht angehängter Grafiken
Zitat
DieDolly
Öffentliches Profil ansehen
Mehr Beiträge von DieDolly finden