MEMO查找的问题。。。
unit UntMemoFind;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
FindDialog1: TFindDialog;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FindDialog1Find(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Finddialog1.Execute;
end;
procedure TForm1.FindDialog1Find(Sender: TObject);
var
I,J,PosReturn,SkipChars:Integer;//定义四个整型变量
begin
for I:=0 to Memo1.Lines.Count do //I用来在MEMO文本中循环查找
begin
PosReturn:=Pos(FindDialog1.FindText,Memo1.Lines[I]); //查找的文本
if PosReturn <>0 then //found!
begin
Skipchars:=0; // initialization Skipchars
for J:=0 to I-1 do //从这儿以下都不清楚
Skipchars:=Skipchars+Length(Memo1.Lines[J]);
SkipChars:=SkipChars+(I*2); //发现不要这行也可执行
SkipChars:=SkipChars+PosReturn-1; //从这儿以上都不清楚
Memo1.SetFocus;//设置光标
Memo1.SelStart:=SkipChars; //选择起始位置
Memo1.SelLength:=Length(FindDialog1.FindText);//选择长度
Break; //干什么用的?
end;
end;
end;
end.
//运行之后发现只能找到文本中第一次出现的要查找的内容,再不能往下找了
...全文
相关推荐
Delphi7中Memo组件实现查找替换功能
### Delphi7中Memo组件实现查找替换功能#### 一、引言在软件开发过程中,文本处理是一项常见的需求,特别是在编写编辑器或文档管理工具时。
彻底解决memo内容多时假死问题
"该文主要讨论了在处理memo控件含有大量内容时可能出现的假死问题,并提供了解决方案。"在使用 memo 控件显示大量文本时,有时会出现应用程序响应变慢甚至假死的现象,这主要是因为 memo 控
在memo中查找字符串
function SearchMemo(Memo: TCustomEdit; const SearchString: string; Options: TFindOptions): Boolean;v
计算机软件-编程源码-Memo的查找功能.zip
在这个特定的上下文中,"Memo的查找功能"指的是在Memo组件内实现文本搜索的能力。这个功能允许用户在大量的文本数据中快速定位特定的信息,提高了工作效率。
delphi中memo实现高亮文字
Memo组件继承自TControl,支持基本的文本操作如插入、删除、查找和替换。默认情况下,Memo中的所有文本都是黑色的,不支持特定文字的高亮显示。


语言基础/算法/系统设计
