以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [分享] 多线程等待窗体(窗口遮罩)(更新)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73365)

--  作者:逛逛
--  发布时间:2015/8/18 10:03:00
--  [分享] 多线程等待窗体(窗口遮罩)(更新)

代码来自于对博客园 Winform应用程序实现通用遮罩层 的改写,对此表示由衷感谢

 

 

实现一个自定义的半透明等待窗口

在执行长时间运算的代码时,遮罩主窗口,防止误操作

注:长时间运行的代码必须是放在自定义函数中。

 

 

 

更新1:解决窗口闪烁问题

更新2:解决不能替换GIF图片的问题 

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:史上醉牛.zip

 

[此贴子已经被作者于2015/10/4 11:03:12编辑过]

--  作者:bigeng
--  发布时间:2015/8/18 10:03:00
--  
沙发了
--  作者:leopain
--  发布时间:2015/8/18 10:05:00
--  

瞧瞧


--  作者:lsy
--  发布时间:2015/8/18 10:14:00
--  
逛逛的顶帖专业户。
--  作者:blsu33
--  发布时间:2015/8/18 10:15:00
--  
顶呱呱
--  作者:foxqd
--  发布时间:2015/8/18 10:18:00
--  
看看
--  作者:hanxuntx
--  发布时间:2015/8/18 10:21:00
--  
谢谢分享图片点击可在新窗口打开查看
--  作者:一笑
--  发布时间:2015/8/18 10:22:00
--  
学习
--  作者:大红袍
--  发布时间:2015/8/18 10:47:00
--  

直接在弄一个独立窗口,弄透明,也是同样的效果吧。

 

AfterLoad事件

 

e.Form.BaseForm.Width = BaseMainForm.Width
e.Form.BaseForm.Height = BaseMainForm.Height
e.Form.BaseForm.Top = BaseMainForm.Top
e.Form.BaseForm.Left = BaseMainForm.Left
e.Form.BaseForm.FormBorderStyle = Windows.Forms.FormBorderStyle.None  \'消除窗口的边框
e.Form.BaseForm.Opacity = 0.1


--  作者:逛逛
--  发布时间:2015/8/18 10:56:00
--  
以下是引用大红袍在2015/8/18 10:47:00的发言:

直接在弄一个独立窗口,弄透明,也是同样的效果吧。

 

 

GIF 不会动啊

你让他运行,用其他程序的窗口去遮盖一下,他就不刷新了