本文整理自网络,侵删。
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.
相关阅读 >>
Delphi的tservice 服务路径获取 dll中获取文件路径
更多相关阅读请进入《Delphi》频道 >>