吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3331|回复: 9
收起左侧

[其他转载] 双击 高亮所有关键字

[复制链接]
冥界3大法王 发表于 2018-8-19 10:47
本帖最后由 冥界3大法王 于 2018-8-19 10:48 编辑

无费话,先来看下实现后的效果吧。
Snap1.jpg
看完之后,是否心动了?

来来来,抄起我们心爱的Delphi :
procedure TForm1.Memo1DblClick(Sender: TObject);
begin
    ShowMessage(Memo1.SelText);      //这个弹出选中的文字内容
  //后面再接查找 变色的代码就OK了,由于Memo 没有富文本属性,所以,我们换成 RichEdit控件
end;




[Delphi] 纯文本查看 复制代码
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    RichEdit1: TRichEdit;
    Memo1: TMemo;
    Timer1: TTimer;
    procedure Memo1DblClick(Sender: TObject);
    procedure RichEdit1DblClick(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure RichEdit1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i: integer;

implementation

{$R *.dfm}

procedure TForm1.Memo1DblClick(Sender: TObject);
begin
  ShowMessage(Memo1.SelText);
end;



procedure TForm1.RichEdit1DblClick(Sender: TObject);      //没有这样的的事件代码,所以这段落没有反应
var
  M: Integer;
begin
  with RichEdit1 do
  begin
    M := pos(RichEdit1.SelText, RichEdit1.Text);
    if M > 0 then
    begin
      SelStart := M - 1;
      SelLength := Length(RichEdit1.Text);
      SetFocus;
      Richedit1.SelAttributes.Color := clFuchsia;
      SendMessage(self.Richedit1.Handle, EM_SCROLLCARET, 0, 0);
    end;
  end;
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
  i := 0;
  timer1.Enabled := false;
end;

procedure TForm1.RichEdit1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  M: Integer;

begin
  if i = 0 then
  begin
    inc(i);
    timer1.Enabled := true
  end
  else
  begin
    i := 0;
    begin
      with RichEdit1 do
      begin
        M := pos(RichEdit1.SelText , RichEdit1.Text);
        if M > 0 then
        begin
          SelStart := M - 1;
          SelLength := Length(RichEdit1.Text);
          SetFocus;
          Richedit1.SelAttributes.Color := clFuchsia;
          SendMessage(self.Richedit1.Handle, EM_SCROLLCARET, 0, 0);
        end;
      end;
    end;
    timer1.Enabled := false;
  end;
end;

end.


免费评分

参与人数 4吾爱币 +8 热心值 +4 收起 理由
Ganlv + 2 + 1 谢谢@Thanks!
幸福賓兒 + 1 + 1 用心讨论,共获提升!
苏紫方璇 + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
mochongli + 2 + 1 第一个评分都会被淹没

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

mochongli 发表于 2018-8-19 10:50
动心了,但是论坛能用吗。
acsda354 发表于 2018-8-19 10:51
moranyuyan 发表于 2018-8-19 10:59
 楼主| 冥界3大法王 发表于 2018-8-19 11:04
wojaiyh 发表于 2018-8-19 11:06
大神辛苦了~@!!~!~
singo 发表于 2018-8-19 12:53
没看明白 chrome插件不错
无敌小儿 发表于 2018-8-19 14:10
有没有百度搜索或者谷歌搜索,直接搜索关键字高亮
小草草 发表于 2020-1-9 09:37
这个东东很意思,感谢楼主的分享
rosoon 发表于 2020-1-9 09:51
不明觉厉系例~~!!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 18:04

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表