![]() |
SynEdit Zeile markieren...
Hi,
ich arbeite mit der TSynEdit Komponente und habe da ein Problem. Es gibt bei SynEdit die Möglichkeitt, den gesamten Text zu markieren mit SynEdit.SelectAll. Wie kann ich eine einzelne Zeile markieren? Ich meine jetzt aber nicht ActivLineColor. In WordPad oder auch anderen Programmen kann man doch auch eine Zeile markieren. Gruß Mazel |
Re: SynEdit Zeile markieren...
Hi,
probiers doch mal mit SelStart & SelEnd |
Re: SynEdit Zeile markieren...
Hi
Es müsste reichen, CaretY auf die Zeile zu setzen, CaretX auf 0 (oder war's 1 :gruebel: ), also auf den Anfang der Zeile und dann mit
Delphi-Quellcode:
oder so in der Art, die Zeile markieren. Kann's grad nicht testen.
SelLength(Length(SynEdit1.LineText));
|
Re: SynEdit Zeile markieren...
moin,
so könnte eine Funktion zu deinem Problem aussehen:
Delphi-Quellcode:
procedure SynEditSelLine(const Line: Integer; const Synedit: TSynEdit);
var i, l: Integer; begin if (Line < Synedit.Lines.Count + 1) and (Line > -1) and (Synedit <> nil) then begin l := 0; for i := 0 to Line -2 do inc(l, Length(Synedit.Lines[i]) + 2); Synedit.SelStart := l; Synedit.SelEnd := l + Length(Synedit.Lines[Line -1]); end; end; |
Re: SynEdit Zeile markieren...
Wieso nicht einfach so wie ich's geschrieben habe? ;)
Delphi-Quellcode:
Deine Schleife ist nicht gerade sehr performant, wie du siehst geht es leicht ohne. Klar, die Abfrage, ob die Zeile bzw. das SynEdit existiert, muss man bei mir noch hinzufügen.
procedure SelectLine(LineNo: Integer; SynEdit: TSynEdit);
begin SynEdit.CaretX := 1; SynEdit.CaretY := LineNo; SynEdit.SelLength := Length(SynEdit.LineText); end; |
Re: SynEdit Zeile markieren...
Das war nur die komplexe Lösung :P :mrgreen:
|
Re: SynEdit Zeile markieren...
Hi,
danke für die Antworten. Habe eben die beiden ausprobiert und sie funktionieren super. :thumb: :thumb: Ich danke euch. Gruß Mazel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz