以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  偶尔程序假死,求强制关闭前端窗口的办法  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=106241)

--  作者:zhuya820
--  发布时间:2017/9/5 11:21:00
--  偶尔程序假死,求强制关闭前端窗口的办法
偶尔程序假死,求强制关闭前端窗口的办法
操作正常,就是前端窗口无法关闭
右上角关闭无效
用强制关闭
代码
SystemReady = False
Try
    Forms("商品基础信息录入").Close()    
Catch ex As Exception
    MessageBox.Show("失败")
End Try
SystemReady = True
退出后得到如下界面:
有什么办法处理前端这个窗口吗?

[此贴子已经被作者于2017/9/13 13:50:47编辑过]

--  作者:有点甜
--  发布时间:2017/9/5 11:25:00
--  
你把窗口置顶了?你这个窗口无法关闭,一定程度是因为窗口后面有一个msgbox窗口。你按下alt+F4几次,看能否关闭。
--  作者:有点甜
--  发布时间:2017/9/5 11:28:00
--  
  窗口基本上不会假死,肯定你控制上有问题。实例发上来看看。
--  作者:zhuya820
--  发布时间:2017/9/5 11:45:00
--  
是代码的问题
完成输入后

SelectedIndexChanged 选择不同列表项目后执行。

\'根据上级列表名称筛选本表数据


Dim esd = e.Sender

Dim cnm = e.form.Controls("ComboBoxg_商品归类")

If esd.text = "+管理" Then


\'\'\'略


Else

    \'判定下拉列表可打开了

    esd.Select

    Dim i As Integer

    For i = 1 To 3

        If esd.DroppedDown = True Then \'判定下拉列表状态

            Sendkeys.Send("{ESC}") \'关闭下拉列表

        End If

    Next

    \'延时执行---如下屏蔽就不触发进入控件事件了【用处是说输入完成后直接跳转至下一步控件的下拉列表直接输入数据,做到数据连惯输入】

    \'While Date.Now < Date.Now.AddSeconds(0.5) \'延时执行

        \'Application.DoEvents \'少于指定时间前即刻暂停代码的执行,大于时间后再继续执行代码

    \'End While

    cnm.Select

End If


此为问题代码 如果不暂停0.5S左右,下个控件"ComboBoxg_商品归类"的下拉列表就不自动打开

    \'延时执行---如下屏蔽就不触发进入控件事件了【用处是说输入完成后直接跳转至下一步控件的下拉列表直接输入数据,做到数据连惯输入】

    \'While Date.Now < Date.Now.AddSeconds(0.5) \'延时执行

        \'Application.DoEvents \'少于指定时间前即刻暂停代码的执行,大于时间后再继续执行代码

    \'End While



--  作者:zhuya820
--  发布时间:2017/9/5 11:47:00
--  
还有强制关闭后还有如下窗口

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170905114618.png
图片点击可在新窗口打开查看


--  作者:zhuya820
--  发布时间:2017/9/5 11:51:00
--  
还有控件太多,有什么办法可以一健设置TAB键的顺序号吗
或代码设置
最好开发个一键设置TAB顺序的功能默认从30+开始方便向前修改序列

--  作者:有点甜
--  发布时间:2017/9/5 12:24:00
--  
以下是引用zhuya820在2017/9/5 11:51:00的发言:
还有控件太多,有什么办法可以一健设置TAB键的顺序号吗
或代码设置
最好开发个一键设置TAB顺序的功能默认从30+开始方便向前修改序列

 

工具栏那里可以设置 http://www.foxtable.com/webhelp/scr/0700.htm

 


--  作者:有点甜
--  发布时间:2017/9/5 12:30:00
--  

回复4楼,你代码可以写到TextChanged事件,如

 

Dim obj = e.form.controls("combobox2").basecontrol

obj.OpenDropDown


--  作者:zhuya820
--  发布时间:2017/9/5 16:14:00
--  
为什么在窗口编辑模式下,预览窗口会自动激活事件代码的编辑窗口,关闭后才会出现预览窗口
偶尔的情况下,
这不正常呀

--  作者:有点甜
--  发布时间:2017/9/5 16:37:00
--  
以下是引用zhuya820在2017/9/5 16:14:00的发言:
为什么在窗口编辑模式下,预览窗口会自动激活事件代码的编辑窗口,关闭后才会出现预览窗口
偶尔的情况下,
这不正常呀

 

是不是你sendkeys代码影响了?做个例子发上,说明要实现的功能。