我想再离开edit1时候执行一下Edit1KeyDown(Sender: TObject; var Key: Word;(30分)

Z

zs_buaa

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm2.Edit1KeyDown(Sender: TObject;
var Key: Word;
Shift: TShiftState);
var temp:string;
tsql:string;
begin
if Key=VK_RETURN then
begin
...
end;
end;
我想再离开edit1时候执行一下Edit1KeyDown(Sender: TObject;
var Key: Word;
Shift: TShiftState,shiftstate应该怎么传参数,nil,null,[ssAlt]都不行,请教
procedure TForm2.Edit1Exit(Sender: TObject);
var Shift: TShiftState;
begin
// self.Edit1KeyDown(sender,VK_RETURN,Shift);
end;
end;
 
你把 on keydown里的东西写成一个procedure不就可以了?
 
那还要设标志,否则有可能重复执行
 
想起到什么效果,以下两种都可以:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
//keybd_event(vk_return,0,0,0);
edit1.Perform(WM_KeyDown,VK_return,0);
end;
 
顶部