在DELPHI写的程序中如何按回车键跳到下一个控件文本框中进行输入?
解决方案 »
- 请教TMonthCalendar控件上方的星期一,能不能改成周一
- 非常新颖的一个问题:通过地图来了解全国销售情况!
- *******************新买的自行车在存车处丢了,大家说怎么办,是花钱存的,能赔吗。******************
- 在同一报表中显示两个表中的数据?
- >>请以最通俗易懂的语言讲解一下"委托",最好加一点代码!(以个人的理解来说,网上复制到的就不要了).
- 这群老大都要我们程序员做活的程序,没救了,做好还要我们干嘛,没做,更没救了,给我了方案吧!!
- 实现这样的功能难吗?我最多只能给146分了
- 帮忙看看http://www.yuanzn.com/image/main.jpg上的工具栏用的是什么控件?
- 请问怎样才能知道按下了enter键
- 控件故障,求救!!!
- ExpressPrinting System控件里变量没定义?
- 一个控制EXCEL问题
Edit2.SetFocus;
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=Char(13) then
Perform(WM_NEXTDLGCTL,0,0)
end;
不过我用了XPMENU后,一用这个就出错,不明白。
begin
key:=vk_tab;
selectnext(activecontrol,true,true);
end;
Edit2.SetFocus;
Edit2.SetFocus;
我一直在用
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key=Char(13) then
Perform(WM_NEXTDLGCTL,0,0)
end;
key := #0;//加上这句,要不有响声
Edit2.SetFocus;
Edit2.SetFocus;
Shift: TShiftState);
begin
if key=13 then
Edit1.SetFocus;
end;procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
Edit1.SetFocus;
end;
然后在这个窗体的OnKeyPress事件中写入如下代码:
begin
if Key = #$1b then
begin
form1.Close;
end;
if key=#13 then
begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
end;
end;
该代码的意思为:
当按下ESC键时,关闭该窗体,当按下回车键时,移动到下一个控件.
Perform(WM_NEXTDLGCTL,0,0)
然后在这个窗体的OnKeyPress事件中写入如下代码:
begin
if Key = #$1b then
begin
form1.Close;
end;
if key=#13 then
begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
end;
end;