当前位置: 代码迷 >> PB >> 怎么判断获取焦点是窗口
  详细解决方案

怎么判断获取焦点是窗口

热度:56   发布时间:2016-04-29 08:31:53.0
如何判断获取焦点是窗口?
现在有一个单行文本框Sle_name的losefocus事件中有这样一段代码:
if classname(getfocus())='dw_1' then return
if dw_1.visible then
  dw_1.visible=false
 end if
dw_1是一个用于动态查询Sle_name中输入姓名的DW,我是想当焦点离开Sle_name时如果不是移到DW那么就将已经显示的DW隐藏,但是如果这个时候我点击了MDI主窗口的最小化,那么就报错说if classname(getfocus())='dw_1' then return这代语句存在空对象引用,这个问题应该怎么解决比较好呢?能不能有办法先判断点击的是不是MDI主窗口?

------解决方案--------------------
应该不是判断getfocus报错的,你把报错的内容贴上来看看先~~
通过classname可以得到mdi的名称,还有就是你可以在sle_name的losefocus事件中postevent一个事件,在那里面去设置dw_1是否显示~~
------解决方案--------------------
探讨
if classname(getfocus())='dw_1' then return

------解决方案--------------------
前面多加一个 if isnull(this.getfocus()) then... end if


------解决方案--------------------
if isnull(this.getfocus()) then 
if dw_1.visible then
dw_1.visible=false
end if
else
if classname(getfocus())='dw_1' then return
if dw_1.visible then
dw_1.visible=false
end if

end if
  相关解决方案