procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if key = #13 then key := #97; end;
procedure TFrmBuy.FormKeyPress(Sender: TObject; var Key: Char); begin if key=#13 then Begin key:=#0; perform(WM_NEXTDLGCTL,0,0); end; end;
mainform.keypreview:=true; // if key=#13 then begin key:=#0; perform(WM_NEXTDLGCTL,0,0); end;
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, ValEdit, ComCtrls, DB, ADODB;type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Button1: TButton; Button2: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; ado_cs_itinfo: TADOConnection; ado_rs_itinfo_company: TADODataSet; Button3: TButton; Label6: TLabel; procedure FormCreate(Sender: TObject); procedure Edit1KeyPress(Sender: TObject;var Key:Char); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject); begin {with TLabel.Create(Self) do begin Parent := Self; Caption := 'Show me the money'; Left := 100; Top := 20; end;}end;procedure TForm1.Edit1KeyPress(Sender: TObject;var Key:Char); begin if key=#13 then key:=#97; end;end.
procedure Tfmain.Edit2KeyPress(Sender: TObject; var Key: Char); begin if ((key in ['a'..'z']) or (key=#13)or (key=#8)or(key in ['A'..'Z'])) then begin if key=#13 then begin //代码 end; end; end;
procedure TForm1.FormCreate(Sender: TObject); begin KeyPreview := True; end;procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_RETURN then PostMessage(TWinControl(Sender).Handle, WM_KEYDOWN, VK_TAB, 0); end;
对不起大家了,问题解决了,是我没在events里设置,太愚昧了,马上就结帖,谢谢大家了。
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_RETURN then key:=vk_tab; end;
key := #0
if key = #13 then
key := #97;
begin
if key = #13 then
key := #97;
end;
begin
if key=#13 then
Begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);
end;
end;
//
if key=#13 then
begin
key:=#0;
perform(WM_NEXTDLGCTL,0,0);
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, ValEdit, ComCtrls, DB, ADODB;type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
ado_cs_itinfo: TADOConnection;
ado_rs_itinfo_company: TADODataSet;
Button3: TButton;
Label6: TLabel;
procedure FormCreate(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject;var Key:Char);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
{with TLabel.Create(Self) do
begin
Parent := Self;
Caption := 'Show me the money';
Left := 100;
Top := 20;
end;}end;procedure TForm1.Edit1KeyPress(Sender: TObject;var Key:Char);
begin if key=#13 then
key:=#97;
end;end.
begin
if ((key in ['a'..'z']) or (key=#13)or (key=#8)or(key in ['A'..'Z'])) then
begin
if key=#13 then
begin
//代码 end;
end;
end;
begin
KeyPreview := True;
end;procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_RETURN then
PostMessage(TWinControl(Sender).Handle, WM_KEYDOWN, VK_TAB, 0);
end;
Shift: TShiftState);
begin
if Key = VK_RETURN then
key:=vk_tab;
end;