edit1.text := 'ABC';
edit1.SelectAll;
edit1.CopyToClipboard;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);edit1.text := 'test';
edit1.SelectAll;
edit1.CopyToClipboard;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
为什么執行結果卻是 testtest 而不是ABCTEST
edit1.SelectAll;
edit1.CopyToClipboard;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);edit1.text := 'test';
edit1.SelectAll;
edit1.CopyToClipboard;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
为什么執行結果卻是 testtest 而不是ABCTEST
var I:integer=1;procedure TForm1.Timer1Timer(Sender: TObject);
begin
sleep(1000);
edit1.SetFocus;
if I mod 2 >0 then
begin
edit1.text := 'ABC';
edit1.SelectAll;
edit1.CopyToClipboard;
edit2.SetFocus;
end else begin
edit1.text := 'test';
edit1.SelectAll;
edit1.CopyToClipboard;
edit3.SetFocus;
end;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
inc(i);
end;procedure TForm1.Button2Click(Sender: TObject);//测试
begin
timer1.Enabled:=true;
end;
clipboard.AsText:=edit1.Text;
edit2.PasteFromClipboard;
//clipboard.Clear;
edit1.text := 'test';
clipboard.AsText:=edit1.Text;
edit2.PasteFromClipboard;
我用循环 还是不成
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
i:=1;
while i<3 do
begin
sleep(1000);
edit1.SetFocus;
if I mod 2 >0 then
begin
edit1.text := 'ABC';
edit1.SelectAll;
edit1.CopyToClipboard;
edit2.SetFocus;
end else begin
edit1.text := 'test';
edit1.SelectAll;
edit1.CopyToClipboard;
edit3.SetFocus;
end;
keybd_event(VK_CONTROL, 0, 0, 0);
keybd_event(Ord('V'), 0, 0, 0);
keybd_event(Ord('V'), 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
inc(i);
end;
end;
clipboard.AsText:=edit1.Text;
edit2.PasteFromClipboard;
//clipboard.Clear;
edit1.text := 'test';
clipboard.AsText:=edit1.Text;
edit2.PasteFromClipboard;
------------------------这不就是 “PasteFromClipboard; 必须同时运行 也就是说 运行了一个 PasteFromClipboard; 接下来 就要运行 另外一个” 吗?