如何在同一行中用不同的颜色写文本?(我使用richedit)。
procedure TForm1.btnEClick(sender: TObject);
begin
m0.SelAttributes.Color := clBlue;
m0.SelAttributes.Style := [fsBold];
m0.lines.add('This is blue and it is bold');
m0.SelAttributes.Color := clGreen;
m0.SelAttributes.Style := [fsBold];
m0.lines.add ('This is Green and it is bold');
m0.lines.add('');
m0.lines.add('But how to write text in the same line with different color?');
// i want to have both blue and green in the same line
end;
最好的祝愿,蜜蜂
3条答案
按热度按时间a1o7rhls1#
你的思路是正确的。只需更改
SelAttributes
并使用SelText
而不是Lines.Add
:这产生
m4pnthwp2#
如果你正在使用主题...上面的答案将不起作用..
你看不到任何颜色...直到你从样式中删除seFont ..
例如
1wnzp6jl3#
对于行中的最后一段文本,包括回车以结束该行。