汗!鍵盘焦点转移的难题,高手进来啊!(100分)

  • 主题发起人 主题发起人 xhliang
  • 开始时间 开始时间
X

xhliang

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm21.Edit5KeyPress(Sender: TObject;
var Key: Char);
begin
if key=#13 then
begin
SelectNext(((sender) as twincontrol),true,true);
Key:=#0;
以上程序在本机运行正常,编译成exe文件后在别的机上竟不能正常转移焦点,不知何故,请各位指教!多谢!
 
一句
if key=#13 then

key=#9;
就搞定 偏要那么麻烦。
 
哈哈,真的么。学习ing
 
能行吗?试试!不过好像不行,一回车光标都不知到何处去了!我的系统是win2003+delphi7.0 ,在本机能运行的程序到别的机器上为何就会出错呢?????
 
请正确设置控件的tagstop,taborder,不要埋怨什么东西
 
hanpengshan_00兄:能祥细解说一下吗?,我是个新手,多谢!tabstop设true、taborder两个edit,一个设0,一个设1。在本机运行得好好的,到别的机上就不行。
 
试了好久后,新建一form,增两个edit 
unit Unit70;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, GridsEh, DBGridEh, DB, ADODB;
type
TForm70 = class(TForm)
Panel1: TPanel;
Edit1: TEdit;
Edit2: TEdit;
procedure FormClose(Sender: TObject;
var Action: TCloseAction);
procedure FormKeyPress(Sender: TObject;
var Key: Char);

private
{ Private declarations }
public
{ Public declarations }
end;

var
Form70: TForm70;
implementation
uses unit1,frm_Param,DBGridEhImpExp;
const
ScreenWidth: LongInt = 800;
{在分辨率为 800x600 的模式下编程.}
ScreenHeight: LongInt = 600;
{$R *.dfm}
procedure TForm70.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
form1.show;
end;
procedure TForm70.FormKeyPress(Sender: TObject;
var Key: Char);
begin
if key=#13 then
Perform(WM_NEXTDLGCTL,0,0);
end;
tabstop设true、taborder两个edit,一个设0,一个设1,按回车鍵能在两个edit中转换焦点。不过奇怪的是form属性中的keypreview却要设为false后才能正常运行!!!
 
不过奇怪的是form属性中的keypreview却要设为false后才能正常运行!很多资料上都说是要设成true的。是我的系统坏了?还是有delphi7.0坏了?请各位大大指教!
 
试来试去,试了好久,也没找到原因,最后只好采取写代码的方式来解决。
procedure TForm21.Button7Click(Sender: TObject);
begin
Edit5.SetFocus;
end;
 
另edit5.tabstop设false.form.keypreview设true
谢谢各位大大指教!
 
多人接受答案了。
 
后退
顶部