请问前辈们TRichEdit的入门使用:
①.我想给TRichEdit输入的字符串中的指定字符串(比如"123")都显示出蓝色色彩,我自己于是我自己写了代码A,但是发现成功设置了字体的颜色后在被设置颜色的字符串的后面输入新的字符串的话也会导致新的字符串色彩受影响。请问怎么解决?②.还有一个问题是如何在TRichEdit的光标处TRichEdit.SelStart插入字符串?我是通过自己写的函数InsertStr(),来在光标处插入字符串的,但发现用户不断点击插入字符串按钮的时候会出现严重的闪烁用了beginupdate;也是,请问除了我这样设置TRichEdit.Text 的方法有其他的方法在光标处插入字符串吗?
//在光标处插入字符串
procedure InsertStr(const cEdit: TRichEdit; const cStr: string);
var
vTI: Integer;
vTS: string;
vSelLen, vStrLen: Integer;
begin
vTS := cEdit.Text;
vTI := cEdit.SelStart;
vStrLen := lstrlen(PChar(PChar(cStr)));
vSelLen:= cEdit.SelLength;
cEdit.Text := Copy(vTS, 1, vTI) + cStr + Copy(vTS, vTI + vSelLen + 1, Length(vTS) - vTI - vSelLen);
cEdit.SelStart:= vTI + vStrLen;
end;
①.我想给TRichEdit输入的字符串中的指定字符串(比如"123")都显示出蓝色色彩,我自己于是我自己写了代码A,但是发现成功设置了字体的颜色后在被设置颜色的字符串的后面输入新的字符串的话也会导致新的字符串色彩受影响。请问怎么解决?②.还有一个问题是如何在TRichEdit的光标处TRichEdit.SelStart插入字符串?我是通过自己写的函数InsertStr(),来在光标处插入字符串的,但发现用户不断点击插入字符串按钮的时候会出现严重的闪烁用了beginupdate;也是,请问除了我这样设置TRichEdit.Text 的方法有其他的方法在光标处插入字符串吗?
//在光标处插入字符串
procedure InsertStr(const cEdit: TRichEdit; const cStr: string);
var
vTI: Integer;
vTS: string;
vSelLen, vStrLen: Integer;
begin
vTS := cEdit.Text;
vTI := cEdit.SelStart;
vStrLen := lstrlen(PChar(PChar(cStr)));
vSelLen:= cEdit.SelLength;
cEdit.Text := Copy(vTS, 1, vTI) + cStr + Copy(vTS, vTI + vSelLen + 1, Length(vTS) - vTI - vSelLen);
cEdit.SelStart:= vTI + vStrLen;
end;
解决方案 »
- TDrawGrid问题?
- bde连接数据库时的问题
- dbgrid 和dbnavigator连用,遇到布尔型时老是出错!
- 连接出错[DBNMTMPW]找不到指定的sql server,但我在ODBC中设置一个连接后,再启动此软件就连接成功????
- 关于EXCEL表格内容:当EXCEL表格中有一个公式时,如何区分公式和公式的值?
- 本人现接一个人事考勤工资核算项目要10天完成。我提供硬件接口程序,
- 网络问题,UP有分!!
- Quickreport的高手请指教!
- 在一个窗口弹出之前WINDOWS会对它做些什么?
- 大概是sql语句错误,显示“无效列名”?
- 问个Tchart画曲线的问题
- win 7 下的 D7 是不是很悲剧
上述问题应该只有在设置richedit.font.color才会出现啊。。
你可以参考demo\richedit delphi自带的例子
插入字符串的标准方法是RichEdit1.SelText:='XXXX';
这样就不会受影响了。。
http://topic.csdn.net/u/20110929/14/dc40c00c-bdd0-4750-b538-b745730c8db9.html