首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

怎么在richedit和memo中给有字符的行加上背景色

2012-03-28 
如何在richedit和memo中给有字符的行加上背景色?我希望在richedit或memo中,给有字符的行加上整行背景色,请

如何在richedit和memo中给有字符的行加上背景色?
我希望在richedit或memo中,给有字符的行加上整行背景色,

请问该怎么做?

我的目的是可以通过这种方式明白展示给使用者,这些行有空格或换行等空白字符。

[解决办法]

Delphi(Pascal) code
选择一些文字uses  richedit;var  Fmt :TCharFormat2;begin  Fmt.cbSize := SizeOf(Fmt);  Fmt.dwMask := CFM_COLOR or CFM_BACKCOLOR;  Fmt.crTextColor := clRed;  Fmt.crBackColor := clYellow;  RichEdit1.Perform(EM_SETCHARFORMAT,SCF_SELECTION,integer(@Fmt));end;
[解决办法]
Delphi(Pascal) code
unit   Unit1; interface uses     Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,     Dialogs,   StdCtrls,   ComCtrls,richedit;//注意要加上RichEdit的引用 type     TForm1   =   class(TForm)         RichEdit1:   TRichEdit;         Button1:   TButton;         procedure   Button1Click(Sender:   TObject);     private         {   Private   declarations   }     public         {   Public   declarations   }     end; var     Form1:   TForm1; implementation {$R   *.dfm} procedure   TForm1.Button1Click(Sender:   TObject); var     Fmt   :TCharFormat2; begin     Fmt.cbSize   :=   SizeOf(Fmt);//这里放传递的结构大小,系统通过这个知道传递的是CharFormat还是CharFormat2     Fmt.dwMask   :=   CFM_COLOR   or   CFM_BACKCOLOR;//告诉系统只有字体颜色和背景颜色两个字段的值有效     Fmt.crTextColor   :=   clRed;//设置字体颜色     Fmt.crBackColor   :=   clYellow;//设置字体背景色     RichEdit1.Perform(EM_SETCHARFORMAT,SCF_SELECTION,integer(@Fmt));//发EM_SETCHARFORMAT消息给RichEdit     //其中SCF_SELECTION表示该设置只对选择的文字有效,具体用法参考win32   SDK   HELP     RichEdit1.Lines.Add( '我靠啊 ');//   插入一行新文字 end; 

热点排行