为了账号安全,请及时绑定邮箱和手机立即绑定

非界面线程操作控件的问题2

非界面线程操作控件的问题2

噜噜哒 2018-12-06 13:11:43
if (this.lblInfo.InvokeRequired)this.Invoke(new Action(() =>{this.lblInfo.Text = "服务器连接失败,请稍后再试";Thread.Sleep(10000);this.lblInfo.Text = "";}));else{this.lblInfo.Text = "服务器连接失败,请稍后再试";Thread.Sleep(10000);this.lblInfo.Text = "";}   这段代码里的this.lblInfo.InvokeRequired是否必须,不是说this.Invoke什么情况下都能用吗? 另外这段代码是想要实现一个文本显示10s然后消失的效果,代码有没有改进的空间,对于线程操作界面这块刚接触请指点
查看完整描述

1 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

不是必须,但是Invoke的效率比直接调用低,所以就事先判断一下了,这是推荐标准而已 如果你这个线程只管10s后消失的话这样很好了,其实我觉得可以开个Timer啊,10秒一次触发,第一次触发就顺便把Timer给Stop就好了嘛,这样的话线程什么的就不用考虑了
查看完整回答
反对 回复 2019-01-21
  • 1 回答
  • 0 关注
  • 356 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信