用一的TEdit做字符输入控件,每次回车完成输入,计算机会Beep一声,好象出错一样,
如果输入很多数据时,Beep不停!很烦了!
TEdit KeyDown,KeyUp不写任何代码也有这种情况,
请大虾指教,成功50分马上给!
如果输入很多数据时,Beep不停!很烦了!
TEdit KeyDown,KeyUp不写任何代码也有这种情况,
请大虾指教,成功50分马上给!
调试欢乐多
if key = #13 then
begin
按ENTER(输入完成后应当做的事情;
key := #0;
end;
begin
if key = #13 then
key := #0;
end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
TmpCtrl: TWinControl;
ETmp: TKeyPressEvent;
begin
if key = 13 then
begin
TmpCtrl := ActiveControl;
if TmpCtrl is TCustomMemo then exit;
if TmpCtrl is TEdit then
begin
if assigned(TEdit(TmpCtrl).onKeyPress) then
ETmp:= TEdit(TmpCtrl).OnKeyPress;
TEdit(TmpCtrl).OnKeyPress := EditKeyPress;
end;
repeat
TmpCtrl:= FindNextControl(TmpCtrl,true,true,false);
until (TmpCtrl is TCustomEdit) or
(TmpCtrl is TCustomComboBox) or
(TmpCtrl is TCustomListBox) or
(TmpCtrl is TCustomCheckBox) or
(TmpCtrl is TRadioButton);
if TmpCtrl is TEdit then
begin
if assigned(ETmp) then
TEdit(TmpCtrl).OnKeyPress := ETmp;
end;
TmpCtrl.SetFocus ;
end;
end;
回答!马上给分了!!
key=#0 无任何操作。
begin
//key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end;
我试了,把key=#0去掉与不去都不会叫,原来我也见过叫的
,我帮你找找阿