Foxtable(狐表)用户栏目专家坐堂 → [求助]代码执行问题(已解决)


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

主题:[求助]代码执行问题(已解决)

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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
[求助]代码执行问题(已解决)  发帖心情 Post By:2016/11/29 21:53:00 [只看该作者]

设计了一等待窗口。令了一全局变量_FromIsOpened。两个函数:

打开等待窗口函数:

If _FromIsOpened = False Then '''如果等待窗口已关闭
   
    If Forms("等待响应").Opened = False Then Forms("等待响应").Open
    If Args.length = 1 Then Forms("等待响应").Controls("提示信息").text = Args(0)
    _FromIsOpened = True
End If

 

关闭等待窗口函数:

If _FromIsOpened = True Then  ''如果等待窗口已打开
    If Forms("等待响应").Opened = True Then Forms("等待响应").Close
    _FromIsOpened = False
End If

 

有两按钮,

按钮一代码:

Functions.Execute("打开等待窗口")

。。。。。查询加载数据的代码

Functions.Execute("关闭等待窗口")

 

按钮二代码:

Functions.Execute("打开等待窗口")

按钮一.PerformClick

Functions.Execute("关闭等待窗口")

 

 

单击按钮二,出现的问题:等待响应窗口显示2次,要实现只显示1次。

 

求助大家,谢谢

 

[此贴子已经被作者于2016/11/30 18:56:22编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111419 积分:567171 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/29 22:11:00 [只看该作者]

按钮二代码:


按钮一.PerformClick


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2016/11/29 22:17:00 [只看该作者]

我在描述问题时,少说了一个按钮。

实际为3个按钮,

 

按钮一代码:

Functions.Execute("打开等待窗口")

。。。。。查询加载数据的代码

Functions.Execute("关闭等待窗口")

 

按钮二代码:

Functions.Execute("打开等待窗口")

。。。。。查询加载数据的代码

Functions.Execute("关闭等待窗口")

 

按钮三代码:

Functions.Execute("打开等待窗口")

按钮一.PerformClick

按钮二.PerformClick

Functions.Execute("关闭等待窗口")

单击按钮三,出现的问题:等待响应窗口显示3次,要实现只显示1次。


 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111419 积分:567171 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/29 22:27:00 [只看该作者]

1、把按钮代码搬到函数

按钮一代码:

Functions.Execute("打开等待窗口")

Functions.Execute("函数1")

Functions.Execute("关闭等待窗口")

 

按钮二代码:

Functions.Execute("打开等待窗口")

Functions.Execute("函数2")

Functions.Execute("关闭等待窗口")

 

按钮三代码:

Functions.Execute("打开等待窗口")

Functions.Execute("函数1")

Functions.Execute("函数2")

Functions.Execute("关闭等待窗口")

2、重复调用代码

按钮三代码:

Functions.Execute("打开等待窗口")

按钮1查询加载数据的代码

按钮2查询加载数据的代码

Functions.Execute("关闭等待窗口")


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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2016/11/29 22:30:00 [只看该作者]

等待窗口用到的地方很多,不可能将所按钮的代码都写到函数。

按我的理解,应该能实现的。

理由:_FromIsOpened初始为False,启动一等待窗口,值为true。当为True时,则不为执行打开窗口函数,直到为False时才会执行。

 

但测试时,就是无法实现。

[此贴子已经被作者于2016/11/29 23:02:37编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2016/11/30 11:44:00 [只看该作者]

各位老师,这个问题还没得到解决哟

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111419 积分:567171 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/30 11:58:00 [只看该作者]

看4楼,没有其它办法

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/11/30 12:26:00 [只看该作者]

 只管打开,关闭窗口,用一个计时器来关闭,判断变量的值即可。

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


加好友 发短信
等级:七尾狐 帖子:1791 积分:12764 威望:0 精华:1 注册:2013/7/18 15:51:00
  发帖心情 Post By:2016/11/30 12:35:00 [只看该作者]

5楼的分析有什么问题吗?

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


加好友 发短信
等级:版主 帖子:1693 积分:12135 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2016/11/30 12:43:00 [只看该作者]

试试重写一个函数吧

例如:

函数 ss

Dim a As  List(of  WinForm.Button) = args(0)
If Not Forms("等待响应").Opened Then
    Forms("等待响应").Open
    For Each b As WinForm.Button In a
        b.PerformClick
        If b.Text > "" Then
            Forms("等待响应").Controls("提示信息").text = b.Text
        End If
    Next
    Forms("等待响应").Close
End If


执行


Dim bs As New List(of WinForm.Button)
bs.Add(CType(Forms("??").Controls("Button1"),WinForm.Button))
bs.Add(CType(Forms("??").Controls("Button2"),WinForm.Button))
Functions.Execute("ss",bs)

 回到顶部
总数 11 1 2 下一页