Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];

Вниз

Чтение цвета заливки в RichEdit   Найти похожие ветки 

 
Pavelkq   (2008-03-21 15:55) [0]

Имеется раскрашенный RichEdit. Красился так:
var CF: TCharFormat2;
begin
   FillChar(CF.cbSize, SizeOf(TCharFormat2), 0);
   CF.crBackColor:=clWhite;
   CF.cbSize:= SizeOf(TCharFormat2);
   CF.dwMask := CFM_BACKCOLOR;
   SendMessage(RichEdit2.Handle, EM_SETCHARFORMAT, SCF_SELECTION, Integer(@CF));
end;


Хочу прочитать цвет обратно:

CF.cbSize:= SizeOf(CF);
SendMessage(RichEdit2.Handle, EM_GetCharFormat, 0, integer(@CF));
if CF.crBackColor=clWhite then ...

Не получается. Какие тут тонкости?


 
Palladin ©   (2008-03-21 15:59) [1]

эээ... а чего все так ректально? а SelAttributes чем не угодил?


 
Pavelkq   (2008-03-21 16:10) [2]

Дык SelAttributes понятия не имеет о заливке. Или имеет?


 
Palladin ©   (2008-03-21 16:26) [3]

хм... девствительно... ну тады держи

procedure TForm1.Button1Click(Sender: TObject);
var
 CF: TCharFormat2;
begin
 ZeroMem(@CF, SizeOf(TCharFormat2));
 CF.cbSize:= SizeOf(TCharFormat2);
 CF.crBackColor:=clRed;
 CF.dwMask := CFM_BACKCOLOR;
 SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, Integer(@CF));
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 CF: TCharFormat2;
begin
 ZeroMem(@CF, SizeOf(TCharFormat2));
 CF.cbSize:= SizeOf(TCharFormat2);
 SendMessage(RichEdit1.Handle, EM_GetCharFormat, 1, integer(@CF));
 ShowMessage(ColorToString(cf.crBackColor));
end;


наслаждайся, но учти. цвет фона берется только для символа перед курсором



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.059 c
15-1204892867
@!!ex
2008-03-07 15:27
2008.04.20
Где можно купить летучую мышь?


4-1187346057
DevilDevil
2007-08-17 14:20
2008.04.20
взять альфаканал у иконки


2-1206081072
Wint
2008-03-21 09:31
2008.04.20
Как считать данные из файла побитно??


2-1206621832
Азамат
2008-03-27 15:43
2008.04.20
Обработка событий


3-1195913561
Abadonne
2007-11-24 17:12
2008.04.20
Data provider or other service returned an E_FAIL status





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский