见鬼!在MDI中用TRichEdit.FindText出现问题???

oldhawk 2001-04-19 09:28:00
如下代码在单文档窗体中测试无问题,找到关键字匹配后选中该段文字。但在MDI中,找到匹配文字后,却不能显示选种状态(蓝底白字),但其实是选种了,只是由于MDI FORM为非ACTIVE状态,所以未显示出来,如用鼠标在其窗体上点一下,旧能看到蓝底白字的选中字段。我试了SetFocus,但不行。请高手指点。这不会是Delphi锝bug吧?那就太惨了。

with RichEdit1 do
begin
if SelLength <> 0
then StartPos := StartPos + SelLength
else StartPos := SelStart;

ToEnd := Length(Text) - StartPos;

FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd,[stMatchCase]) ;

if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);

end else ShowMessage('不能找到"'+FindDialog1.FindText +'".');
...全文
97 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
WuHeHai 2001-04-19
  • 打赏
  • 举报
回复
我觉ActiveMDIChild

with TMDIForm(MainForm.ActiveMDIChild).RichEdit1 do
//----------------------------------->>子窗体类型转换
begin
if SelLength <> 0
then StartPos := StartPos + SelLength
else StartPos := SelStart;

ToEnd := Length(Text) - StartPos;

FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd,[stMatchCase]) ;

if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);

end else ShowMessage('不能找到"'+FindDialog1.FindText +'".');
end;
WuHeHai 2001-04-19
  • 打赏
  • 举报
回复
对!就是老兄oldhawk上次的帖子。
呜呜...
为什么没有报酬???
WuHeHai 2001-04-19
  • 打赏
  • 举报
回复
wokao!这代码怎么这么熟啊?我好像写过,让我查查!
rh 2001-04-19
  • 打赏
  • 举报
回复
Memo1.HideSelection:=False;//设置Memo1的HideSelection为假,可以在对象浏览器里直接设置
目 录 第1 章 Delphi 集成开发环境..........1 1.1 Delphi 6.0 简介............................................ 1 1.2 Delphi 可视化开发环境简介...................... 2 1.2.1 对象编辑器(Object Inspector)....3 1.2.2 工程管理器(Project Manager)....5 1.2.3 代码编辑器......................................5 1.2.4 CPU 观察窗口.................................6 1.2.5 对象浏览器......................................7 1.3 开发环境的优化.......................................... 7 1.3.1 编程环境设置..................................7 1.3.2 自定义工具栏..................................9 1.3.3 编辑环境设置................................10 1.3.4 工程设置........................................11 1.4 一个简单的Delphi 程序........................... 12 1.5 本章小结.................................................... 13 第2 章 Object Pascal 语言..........14 2.1 Object Pascal 语言基础............................. 14 2.1.1 Object Pascal 入门.........................14 2.1.2 注释语句........................................15 2.1.3 标识符(Identifier) .....................16 2.1.4 保留字(Reserved Word)和指令字 (Directive) ..........................................16 2.1.5 数据类型........................................17 2.1.6 运算符(Operators)..........................27 2.1.7 语句................................................31 2.1.8 过程与函数....................................35 2.1.9 作用范围........................................42 2.1.10 规范化命名..................................43 2.2 Object Pascal 语言的面向对象技术......... 43 2.2.1 对象和类的概念............................44 2.2.2 Object Pascal 中类的定义.............46 2.2.3 方法...............................................51 2.2.4 多态性...........................................54 2.2.5 类运算符.......................................57 2.2.6 类方法和类引用............................58 2.2.7 单元文件.......................................61 2.2.8 TObject:所有对象的祖先...........63 2.3 结构化异常处理........................................64 2.3.1 try...except 语句和try...finally 语句 ................................................................65 2.3.2 raise 语句.......................................67 2.3.3 异常类...........................................67 2.4 方法与技巧................................................67 2.4.1 设置代码模板................................67 2.4.2 设置提示信息................................68 2.5 本章小结....................................................69 第3 章 常见组件编程............... 70 3.1 窗体和组件................................................70 3.1.1 概述...............................................70 3.1.2 窗体(Form)...............................71 3.1.3 组件(Component) .....................74 3.1.4 组件的使用....................................75 3.2 文本输入类组件........................................78 3.2.1 TEdit 组件.....................................78 3.2.2 TMemo 组件..................................78 3.2.3 TMaskEdit 组件.............................78 3.2.4 TRichEdit.......................................79 3.2.5 TLabel 组件...................................79

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧