当前位置: 代码迷 >> PB >> PB9 DDLB KEYDOWN 事件为何没反应?解决办法
  详细解决方案

PB9 DDLB KEYDOWN 事件为何没反应?解决办法

热度:603   发布时间:2016-04-29 10:34:18.0
PB9 DDLB KEYDOWN 事件为何没反应?
DDLB 增加一PBM_KEYDOWN  
if keyDown(keyEnter!) then
  string ls_gf
ls_gf = this.text
select top 1 供方 into:ls_gf from 报刊资料 where 供方=:ls_gf;
if sqlca.sqlnrows = 0 then
messagebox("INFO","不存在的供方名称!")
return
end if
ddlb_2.setfocus()
end if

无论怎么按都没反应

------解决方案--------------------
一、你的ddlb应该是AllowEdit的吧,如果是这个的话是直接接收不到Enter键的,因为ddlb实际上是由两个控件组成的,就像我们自己画可视组件的时候,内置的两个组件截获了Enter消息;不过如果AllowEdit=False的情况下,是会响应Enter键的~~
二、还有个办法就是在窗口的key事件进行处理
if Not keydown(KeyEnter!) then return
if ClassName(getfocus())='ddlb_1' then
string ls_gf 
ls_gf = this.text 
select top 1 供方 into:ls_gf from 报刊资料 where 供方=:ls_gf; 
if sqlca.sqlnrows = 0 then 
messagebox("INFO","不存在的供方名称!") 
return 
end if 
ddlb_2.setfocus() 
end if


end if
  相关解决方案