C++Builder - zmiana atrybutu tekstu bez utraty innych


(Trance) #1

Witam mam kolejny mały problem w pracy nad moim programikiem. Mianowicie jak zmienić (dodać lub usunąć)atrybut tekstu (pogrubienie,podkreślenie,kursywę lub przekreślenie) nie tracąc ewentualnych innych atrybutów tego tekstu, które są już w tym tekście. Trochę zamotałem więc wyjaśniam :stuck_out_tongue: Załóżmy że tekst jest pogrubiony i chcę aby dodatkowo był także podkreślony(nie tracąc pogrubienia)bo użycie

glowny_modol->memo->Font->Style = TFontStyles()<< fsBold;

powoduje pogrubienie tekstu jednak także niestety utratę wszystkich innych atrybutów które ewentualnie tekst już posiada. Dodam że używam komponentu Memo jako pole do wyświetlania tekstu.

Proszę o pomoc z góry dzienx...


(Qarlos) #2

Może to Ci pomoże:

TFontStyles() << fsBold << fsUnderline;

(Trance) #3
TFontStyles() << fsBold << fsUnderline;

to chyba dodaje 2 atrybuty (podkreślenie i pogrubienie) jednak gdyby tekst był przekreślony to po zastosowaniu twojej wskazówki przekreślenie zostanie wyłączone... i właśnie tu tkwi problem aby ono jednak pozostało...


(andhla) #4

A może tak:

glowny_modol->memo->Font->Style = glowny_modol->memo->Font->Style << fsBold;

(Trance) #5

:o Dziwne wydawało mi się że tak też próbowałem - ale teraz działa :slight_smile: O to chodziło dzięki wielkie :slight_smile: