如何使光标focus到指定的Edit? 页面上有一个Edit和一个按钮,在页面的create事件下有代码edit1.focused,但是运行时focus在Edit和按钮上交替出现,即第一次focus在Edit上,第二次打开focus就在按钮上,我想让focus一直在Edit上,写完数据后再到按钮上,该怎么做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在FormActive事件中写:Edit1.setfocuse 就可以了 WRONG!!!!我试过了,不管在哪里写Edit1.setfocus都会运行错误,Application.Run进行不下去!!还有,我在listbox写了procedure dbclick事件,但是根本就不运行!!这可怎么办?!这个小细节真折磨死人了!! 是不是你delphi有问题,我的怎么都没问题!FormActiveFormShow都没问题! 你不要在Create中写就应该没问题的 在formshow过程中加入try edit1.setfouse;exceptend; 现在可以正常运行了,但是问题还是没有解决!你们试试看,Form1上一个Button1,Form2上一个Edit1和一个Button1form1.button1.click:form2.show;form2.button1.click:form2.hide;form2.formshow:edit1.focus;运行时,点form1的按钮,form2出现,focus在edit1上,点form2.button1,在form1再点button1,这回focus就跑到button上了,交替出现,问题没有解决:(555...... 天!这下子除了第一次打开页面时focus在edit上外,以后在打开focus就全是在button上了,跟没用效果一样!!怎么办?! 我加了label去测试,结果表明,formactive或formshow根本就没有执行!!!这和listbox里dblclick问题一样,难道这些事件都不能用吗?郁闷…… 关键时在form2已经show的情况下,你再点form1的button按钮,才会这样,在form1的button按钮的onclick事件中添加如下代码试试if form2.visible=true thenbeign sendmessage(form2.handle,sw_restore,1,integer(true)); form2.edit1.setfocused;endelse form2.show; 把sendmessage(form2.handle,sw_restore,1,integer(true));改成showwindow(form2.Handle,sw_restore); 问题解决了!formshow不运行的原因是,在Objects Inspector中的Onshow事件没有选中formshow这个过程,现在行了,listbox的dblclick也可以了,万岁!谢谢大家! 客户端大概有1000多个的系统 IE7拖放的问题 delphi编写的SQL2000数据库的读写是否要表(记录)独占和解锁 delphi中的timer是否就是多线程? 散分庆祝 Error:Record not find or changed by anoter user 如何用ADOQUERY+ADOCONNECTION+DBGRID从表中读出数据,显示于DBGRID中 SetSystemTime小时上出现的一个问题 在一个窗口上贴图,但当窗体最大化的时候图大小没有变化 数字转换问题 老是出错,困惑! 新手问题2:如何回避在表中一字段输入同一内容?
Edit1.setfocuse 就可以了
我试过了,不管在哪里写Edit1.setfocus都会运行错误,Application.Run进行不下去!!
还有,我在listbox写了procedure dbclick事件,但是根本就不运行!!这可怎么办?!这个小细节真折磨死人了!!
FormActive
FormShow
都没问题!
加入
try
edit1.setfouse;
except
end;
form1.button1.click:form2.show;
form2.button1.click:form2.hide;
form2.formshow:edit1.focus;
运行时,点form1的按钮,form2出现,focus在edit1上,点form2.button1,在form1再点button1,这回focus就跑到button上了,交替出现,问题没有解决:(
555......
if form2.visible=true then
beign
sendmessage(form2.handle,sw_restore,1,integer(true));
form2.edit1.setfocused;
end
else
form2.show;