L
LeonSu
Unregistered / Unconfirmed
GUEST, unregistred user!
新建一个窗体,上面放三个控件:Memo,ActionList,FindDialog。
增加三个Action:EditCopy,EditPaste,EditFind。
快捷键分别为:Ctrl+C,Ctrl+V,Ctrl+F。
(代码在最后)
运行,在MEMO中选择一段字符,按下CTRL+C(复制到剪贴板),按下Ctrl+F调出查找对话框,
最后按下Ctrl+V......不对了,是不是,应该粘贴到对话框中的EDIT中的字符串,跑到Memo中
去了。
如何把粘贴的快捷键去掉,就没问题了,但我必须要快捷键,而且只能是Ctrl+V。
(同样的问题也出现在快捷键Del上)
如何完美的解决?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ActnList, StdActns;
type
TForm1 = class(TForm)
ActionList1: TActionList;
EditPaste1: TEditPaste;
Memo1: TMemo;
EditCopy1: TEditCopy;
FindDialog1: TFindDialog;
Action1: TAction;
procedure EditPaste1Execute(Sender: TObject);
procedure EditCopy1Execute(Sender: TObject);
procedure Action1Execute(Sender: TObject);
var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.EditPaste1Execute(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
procedure TForm1.EditCopy1Execute(Sender: TObject);
begin
Memo1.CopyToClipboard;
end;
procedure TForm1.Action1Execute(Sender: TObject);
begin
FindDialog1.Execute;
end;
end.
增加三个Action:EditCopy,EditPaste,EditFind。
快捷键分别为:Ctrl+C,Ctrl+V,Ctrl+F。
(代码在最后)
运行,在MEMO中选择一段字符,按下CTRL+C(复制到剪贴板),按下Ctrl+F调出查找对话框,
最后按下Ctrl+V......不对了,是不是,应该粘贴到对话框中的EDIT中的字符串,跑到Memo中
去了。
如何把粘贴的快捷键去掉,就没问题了,但我必须要快捷键,而且只能是Ctrl+V。
(同样的问题也出现在快捷键Del上)
如何完美的解决?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ActnList, StdActns;
type
TForm1 = class(TForm)
ActionList1: TActionList;
EditPaste1: TEditPaste;
Memo1: TMemo;
EditCopy1: TEditCopy;
FindDialog1: TFindDialog;
Action1: TAction;
procedure EditPaste1Execute(Sender: TObject);
procedure EditCopy1Execute(Sender: TObject);
procedure Action1Execute(Sender: TObject);
var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.EditPaste1Execute(Sender: TObject);
begin
Memo1.PasteFromClipboard;
end;
procedure TForm1.EditCopy1Execute(Sender: TObject);
begin
Memo1.CopyToClipboard;
end;
procedure TForm1.Action1Execute(Sender: TObject);
begin
FindDialog1.Execute;
end;
end.