公司需要写一个给单片机程序升级的工具, 发送时需要显示当前发送进度信息. 原来我使用的方法是在"升级"按钮的 MouseUp 事件里发送数据以及更新界面. 虽然界面信息会更新,但鼠标点击会无反应,窗口被其他窗体挡住时,鼠标点击也不会置顶,所以想到了写一个提示窗体解决这些问题.
- 添加一个窗体,将FormBorderStyle设为None
- 拖入一个BackgroundWorker控件
- 在窗体内添加一个Panel,Dock设为Fill,BorderStyle设为FixedSingle作为窗体边框
- 窗体内添加一个Label用来显示Gif动画,Gif动画可以从 Preloaders.net 下载
- Panel内添加一个TableLayoutPanel, TableLayoutPanel内添加一个Label用来显示提示文本
窗体布局
内部事件
Public Class BackgroundWorkDialog
''' <summary>
''' 后台触发事件
''' </summary>
Public Delegate Sub BackgroundWorkEventHandle(BgWorkDialog As BackgroundWorkDialog)
Private Event BackgroundWorkEvent As BackgroundWorkEventHandle
Priva