AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Rich Edit Markieren unterschiedlicher Styles

Ein Thema von oakley · begonnen am 2. Mär 2017 · letzter Beitrag vom 2. Mär 2017
Antwort Antwort
oakley

Registriert seit: 15. Aug 2005
287 Beiträge
 
#1

Rich Edit Markieren unterschiedlicher Styles

  Alt 2. Mär 2017, 15:46
Hallo zusammen,

ich habe ein RichEdit in dem das erste Wort fett und das zweite nicht fett ist.
Markiere ich nun von links nach rechts beide Worte und möchte es unterstreichen verwende ich:
Code:
RichEdit.SelAttributes.Style := RichEdit.SelAttributes.Style + [fsUnderline]
Was dann passiert ist aber das er mir das erste Wort nicht fett geschrieben lässt sondern dem zweiten Wort anpasst.

Gibt es eine Möglichkeit das so zu ändern, dass er nur unterstreicht und den Style des jeweiligen Wortes bei behält?

Viele Grüße

Mirko
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.132 Beiträge
 
Delphi 12 Athens
 
#2

AW: Rich Edit Markieren unterschiedlicher Styles

  Alt 2. Mär 2017, 15:54
Das zweite RichEdit.SelAttributes.Style in deinem Code liest den Style an der Cursorposition aus
und das erste RichEdit.SelAttributes.Style weist dann den "gesamten" Style inkl. Fett/Kursiv/Unterstichen der ganzen Selektierung zu.

Also entweder du merkst dir die Selektierung und änderst das für jedes Zeichen einzeln
oder du teils diesen Bereich in Stückchen mit gleicher Formatierung und setzt diese bei Stückchen jeweils deine Änderung rein.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
oakley

Registriert seit: 15. Aug 2005
287 Beiträge
 
#3

AW: Rich Edit Markieren unterschiedlicher Styles

  Alt 2. Mär 2017, 16:05
Hallo,

danke für Deine Antwort.
Für jedes Zeichen einzeln dann in etwa so?

Code:
sstart := RICHEDIT.Selstart;
slength := RICHEDIT.SelLength;

for i := 0 to slength-1 do
begin
  RICHEDIT.SelStart := sstart + i;
  RICHEDIT.SelLength := 1;
  RICHEDIT.SelAttributes.Style := RICHEDIT.SelAttributes.Style + [fsUnderline];
end;
Könntest Du mir bitte damit helfen, wie ich am besten die Aufteilung in Bereiche gleicher Formatierung mache?

Viele Grüße

Mirko

Geändert von oakley ( 2. Mär 2017 um 16:18 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz