Foxtable(狐表)用户栏目专家坐堂 → 偶尔程序假死,求强制关闭前端窗口的办法


  共有2631人关注过本帖树形打印复制链接

主题:偶尔程序假死,求强制关闭前端窗口的办法

帅哥哟,离线,有人找我吗?
zhuya820
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
偶尔程序假死,求强制关闭前端窗口的办法  发帖心情 Post By: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编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By: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
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 11:47:00 [显示全部帖子]

还有强制关闭后还有如下窗口

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


 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 11:51:00 [显示全部帖子]

还有控件太多,有什么办法可以一健设置TAB键的顺序号吗
或代码设置
最好开发个一键设置TAB顺序的功能默认从30+开始方便向前修改序列

 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 16:14:00 [显示全部帖子]

为什么在窗口编辑模式下,预览窗口会自动激活事件代码的编辑窗口,关闭后才会出现预览窗口
偶尔的情况下,
这不正常呀

 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 16:44:00 [显示全部帖子]

TextChanged 控件的Text属性发生变化后执行。

影响,屏蔽就正常

Dim esd = e.Sender 'AT注释:定义数组为当前界面组合列表框 = 调用Form表中指定名称的控件的属性

If esd.text > "" Then

    Dim cnm = e.form.Controls("ComboBoxg_商品归类") '定义数组并调用Form表中指定名称的控件的属性(返回当前控件名称)

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

    If esd.text = "+管理" OrElse esd.text = "【已用列表】" OrElse esd.text = "【系统列表】" OrElse esd.text = "【无分类列表】" Then

        esd.text = Vars("控件文本原值")

        Dim i As Integer

        For i = 1 To 3  Step 1

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

                'Sendkeys.Send("{F4}")

            End If

        Next

    Else

        '判定下拉列表可打开了

        ' Sendkeys.Send("{ESC}")

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

            'Sendkeys.Send("{TAB}")

        End If

        cnm.Select

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

        '延时执行

        Dim sdt As Date = Date.Now '定义显示当前时间(含日期)

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

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

        End While

        Dim i As Integer

        For i = 1 To 3 Step 1

            If cnm.DroppedDown = False Then '判定下拉列表状态

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

            End If

        Next

    End If

End If



问题语句:

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




 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 16:53:00 [显示全部帖子]

就是那个代码有问题
屏蔽一切正常,不跳出代码编辑窗口了

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



 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/5 19:34:00 [显示全部帖子]

为什么在打开窗口时会模拟按键
应该是按键乱按所致
[此贴子已经被作者于2017/9/13 13:50:35编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zhuya820
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:243 积分:1819 威望:0 精华:0 注册:2016/1/21 12:44:00
  发帖心情 Post By:2017/9/13 12:48:00 [显示全部帖子]

请问是扩展控件还是再建拉一个按键

 回到顶部