setfocus的用法
请看如下代码,我想在按下button后,输入焦点从edit1转到edit2,但是
好象不行。两个edit都没有了焦点
procedure TForm1.Button1Click(Sender: TObject);
var hh:hwnd;
begin
hh:=getfocus;
if hh=edit1.handle then
windows.SetFocus(edit2.handle);
end;
用edit的setfocus方法显然可以,我想知道,上面的程序有何不妥?
问题点数:50、回复次数:3Top
1 楼xiaonan(我爱罗)回复于 2000-05-02 01:37:00 得分 5
把windows去掉
Top
2 楼Lin(林)回复于 2000-05-02 19:46:00 得分 40
问题在这:(if hh = edit1.handle then)。当Button1发生Click事件时,Button1拥有输入焦点,实际上If语句永远是False,所以执行不到windows.SetFocus(edit2.handle);
解决办法:去掉If 语句。
Top
3 楼zcw(惊风)回复于 2000-05-03 15:25:00 得分 5
procedure TForm1.Button1Click(Sender: TObject);
begin
edit2.SetFocus;
end;Top




