![]() |
richedit1.SelLength := 8;
hi, was bringt denn Sellength?
wenn ich per button dies tue:
Delphi-Quellcode:
funktioniert es doch einwandfrei?
richedit1.SelAttributes.Color := cllime;
richedit1.Lines.Add('bla'); |
Re: richedit1.SelLength := 8;
Zitat:
Zitat:
|
Re: richedit1.SelLength := 8;
ob es funktioniert hängt einfach davon ab, was du machen willst.
wenn du dem selektierten text die farbe clLime zuweisen willst und dann 'bla' dem text hinzufügen willst (wobei dann die markierung wieder aufgehoben wird), dann klappts!!! |
Re: richedit1.SelLength := 8;
es geht ja aber auch farblich text zu adden ohne text zu markieren
|
Re: richedit1.SelLength := 8;
Hi, probier mal das, dann verstehst Du, was es soll
Delphi-Quellcode:
Grüße
richedit1.Clear;
richedit1.Add('Das ist eine Zeile'); richedit1.SelStart := 3; richedit1.SelLength := 4; richedit1.SelAttributes.Color := clLime; Urs P.S. hab gerade kein Delphi laufen, aber es sollte funktionieren... P.S. 2: Du kannst SelLength auch verwenden um abzufragen, welcher Text gerade (vom Benutzer) markiert ist, z.B. um ihn zu kopieren oder was auch immer. |
Re: richedit1.SelLength := 8;
man könnte im fall noch die markierung von vorher speichern, dann fällts nicht auf, dass man die markierung aufgehoben hat
(2 integer-variablen nehmen und am anfang selStart und selEnd speichern und am ende wieder setzen) die 1. zeile muss übrigens richedit1.ClearSelection; heißen, sonst wirdder gesamte inhalt gelöscht!!!! |
Re: richedit1.SelLength := 8;
@Illuminator-23-5:
Das mit Clear war so gemeint, da ich für das Beispiel ein leeres Richedit haben wollte. Aber natürlich hätte ich darauf hinweisen sollen, dass die erste Zeile nicht für einen "echten" Anwendungsfall gedacht war. Grüße und @silent: viel Erfolg Urs |
Re: richedit1.SelLength := 8;
hm, jo jetzt versteh ichs...aber funzt bei mir nur ind er ersten zeile...wie mach ich das auch in zeile 2, 3 etc?
also mit:
Delphi-Quellcode:
richedit1.lines.Add('Das ist eine Zeile');
richedit1.SelStart := 3; richedit1.SelLength := 4; richedit1.SelAttributes.Color := clLime; meine ich danke für den tip btw :) |
Re: richedit1.SelLength := 8;
Wie gesagt, habe gerade kein Delphi laufen...
wenn ich mich richtig erinnere, bezieht sich SelStart auf die Position im gesamten Text, der in der property richedit1.Text als durchgehender String gespeichert wird. Text in der zweiten Zeile hätte dann eben einen höheren Wert für SelStart (?). Lass Dir doch auf ButtonClick die aktuellen Werte für SelStart und SelLength anzeigen und probiere ein wenig mit dem laufenden Programm; dann wirst Du wahrscheinlich ein Gefühl dafür bekommen, wie Du mit den Werten umgehen kannst.
Delphi-Quellcode:
Ich glaube, man kann bei TRichEdit nicht auf eine Cursorposition in Zeilen/Spalten zugreifen.
label1.Caption := IntToStr(Richedit1.SelStart);
label2.Caption := IntToStr(Richedit1.SelLength); Viel Erfolg Urs |
Re: richedit1.SelLength := 8;
Habe mir das jetzt hier nicht alles durchgelesen, eigentlich nur das hier :
Zitat:
Delphi-Quellcode:
RichEdit1.CaretPos
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:57 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