Richedit::CHARFORMAT2 format;
memset( &format, 0x00, sizeof(format) );
format.cbSize = sizeof(Richedit::CHARFORMAT2);
format.dwMask = CFM_BACKCOLOR;
format.crBackColor = RGB(128, 128, 128);
SendMessage(RichEdit1->Handle, EM_SETCHARFORMAT, (WPARAM)SCF_SELECTION,
(LPARAM)&format);
закрасить строку в RichEdit
Подскажите как мне закрасить строку в RichEdit'e. Но так чтобы был виден текст через заливку.
Цитата: nevile
Подскажите как мне закрасить строку в RichEdit'e. Но так чтобы был виден текст через заливку.
Код изменяет цвет фона у выделенного текста. Правда он на Builder'е, но думаю перевести не проблема.
Код:
Код:
procedure TfChat.RE_SetSelBgColor(RichEdit: TsRichEdit; AColor: TColor);
var
Format: CHARFORMAT2;
begin
FillChar(Format, SizeOf(Format), 0);
with Format do
begin
cbSize := SizeOf(Format);
dwMask := CFM_BACKCOLOR;
crBackColor := AColor;
Richedit.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
end;
end;
var
Format: CHARFORMAT2;
begin
FillChar(Format, SizeOf(Format), 0);
with Format do
begin
cbSize := SizeOf(Format);
dwMask := CFM_BACKCOLOR;
crBackColor := AColor;
Richedit.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
end;
end;
но строка до конца не закрашивается