冥界3大法王 发表于 2024-3-13 10:54

关于查找与替换,折腾后的小成果:

本帖最后由 冥界3大法王 于 2024-3-13 10:56 编辑

没求人,自己憋会的。{:301_986:}
我自己比较喜欢这个公司的富文本控件 ,RichView
虽然有更简单的ActionList,但是对生成的DLL中调用竟然抽风。
折腾了一晚上,到现在才折腾成功,所以分享一下:

unit Unit7;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
Vcl.StdCtrls, RVScroll, RichView, RVEdit, RVUniscribeGrIn, RVStyle,
RichViewActions, System.Actions, Vcl.ActnList;

type
TForm7 = class(TForm)
    ActionList1: TActionList;
    RVEEditrvActionFind1: TrvActionFind;
    RVEEditrvActionFindNext1: TrvActionFindNext;
    RVEEditrvActionReplace1: TrvActionReplace;
    RVStyle1: TRVStyle;
    RichViewEdit1: TRichViewEdit;
    Button1: TButton;
    Button2: TButton;
    ReplaceDialog1: TReplaceDialog;
    查找替换: TButton;
    procedure ReplaceDialog1Find(Sender: TObject);
    procedure ReplaceDialog1Replace(Sender: TObject);
    procedure 查找替换Click(Sender: TObject);
private
    { Private declarations }
public
    { Public declarations }
end;

var
Form7: TForm7;

implementation

{$R *.dfm}

uses
RVMisc;

procedure TForm7.ReplaceDialog1Find(Sender: TObject);
begin
if not RichViewEdit1.SearchText(ReplaceDialog1.FindText, GetRVESearchOptions(ReplaceDialog1.Options)) then
    Application.MessageBox('没有找到!', '搜索完成!', MB_OK or MB_ICONEXCLAMATION)
end;

procedure TForm7.查找替换Click(Sender: TObject);
begin
ReplaceDialog1.Execute;
end;

procedure TForm7.ReplaceDialog1Replace(Sender: TObject);
var
ZZZ: Integer;
begin
if frReplace in ReplaceDialog1.Options then            //一个一个的替换
begin
//ShowMessage('您点击的是【替换】按钮');
    RichViewEdit1.InsertText(ReplaceDialog1.ReplaceText);
    RichViewEdit1.Format;
end
else if frReplaceAll in ReplaceDialog1.Options then   //全部替换
begin
//ShowMessage('您点击的是【替换全部】按钮');
    while RichViewEdit1.SearchText(ReplaceDialog1.FindText, GetRVESearchOptions(ReplaceDialog1.Options)) do
    begin
      RichViewEdit1.InsertText(ReplaceDialog1.ReplaceText, False);
      inc(ZZZ);
    end;
end;
end;

end.

top7777 发表于 2024-3-13 11:34

FlyingDragon 发表于 2024-3-13 11:32
这是什么语言?

Delphi吧,姥爷喜欢这个。

冥界3大法王 发表于 2024-3-13 12:19

top7777 发表于 2024-3-13 11:34
Delphi吧,姥爷喜欢这个。

@top7777
你也喜欢看《加里森敢死队》?
“姥爷”一词的由来是刚尼夫假扮服务员那集对那个神偷的戏称。

FlyingDragon 发表于 2024-3-13 11:32

这是什么语言?

lyxzh 发表于 2024-3-13 11:49

鼓励你一下

lsy11230088 发表于 2024-3-13 12:00

向大佬学习!!!!

top7777 发表于 2024-3-13 13:20

冥界3大法王 发表于 2024-3-13 12:19
@top7777
你也喜欢看《加里森敢死队》?
“姥爷”一词的由来是刚尼夫假扮服务员那集对那个神偷的戏称。

小时候看过。个人喜欢basic,特别是VB6,D7是后来自编小工具时学的。

BAPJ333 发表于 2024-3-13 14:24

好用吗?下载能不能免费

大鹏会发光 发表于 2024-3-13 15:26

很酷!加油!

weoken 发表于 2024-3-13 16:13

代码不错,学习啦
页: [1] 2
查看完整版本: 关于查找与替换,折腾后的小成果: