Foxtable(狐表)用户栏目专家坐堂 → [求助]UI线程的问题。


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

主题:[求助]UI线程的问题。

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


加好友 发短信
等级:童狐 帖子:287 积分:4201 威望:0 精华:0 注册:2011/8/19 10:07:00
[求助]UI线程的问题。  发帖心情 Post By:2024/7/27 11:13:00 [只看该作者]

Forms("主窗口").Controls("ListBox1").items.add(Date.Now & "     " & "日志123456789")

Forms("主窗口").Controls("ListBox1").SelectedIndex = Forms("主窗口").Controls("ListBox1").Items.Count - 1

Forms("主窗口").Controls("ListBox1").SelectedIndex = -1


我将这个代码写入到程序的各个部分,有计时器的,有其它线程的,用于在主窗口listbox里面显示软件工作日志,但是偶发性的总是会出现找不到主窗口这样的报错,是不是和UI线程有关系?怎样修改一下代码能解决这个找不到窗口的报错?


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


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

首先,"主窗口"必须属于打开状态。窗口关闭后是无法使用里面的控件的

其次,不知道‘其它线程’是怎么处理的,如果是指异步函数,肯定是不能使用窗口和控件的


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


加好友 发短信
等级:童狐 帖子:287 积分:4201 威望:0 精华:0 注册:2011/8/19 10:07:00
  发帖心情 Post By:2024/7/27 11:52:00 [只看该作者]

主窗口始终处于打开状态,属于软件的主界面,这个报错并不是次次出现,偶尔才会出现。是会在异步函数中调用,但有时候就没事,有时候就报找不到窗口。因为打日志信息存在于程序任何位置,怎么才能解决这个问题?在打日志时候我加入一个if判断,窗口是否打开,就算这样,也会报找不到窗口。

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


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

异步函数不能直接使用窗口和控件的:http://www.foxtable.com/mobilehelp/topics/277.htm

必须通过同步函数调用:http://www.foxtable.com/mobilehelp/topics/3274.htm

 回到顶部