Net_mang_Form.Prg_bar.Visible = True
Net_mang_Form.Prg_bar.Value = 0
Net_mang_Form.prg_Timer.Start()
Dim chk As Integer = file_send(dev_id, dev_type, Net_mang_Form.snd_file_path, ip_addr & "#1206", contrl_id)
'=================== Upload Process is finished =====================
Net_mang_Form.prg_Timer.Stop()
Net_mang_Form.Prg_bar.Visible = False
'====================================================================
此处Net_mang_Form
为Form1
,此代码以Form2
的按钮点击事件编写。
file_send
是dll的功能。
prg_Timer
是计时器控件。
Prg_bar
是进度条控件。
答案 0 :(得分:0)
您是否已经订阅了Timer Elapsed事件,因为我在代码片段中没有看到这一点?
VB.NET Timer
答案 1 :(得分:0)
如果您的计时器是System.Windows.Forms.Timer
,那么它只能接收WM_TIMER
通知(转换为您的代码中的事件回调),而您运行的UI线程并不忙。如果您正在执行需要很长时间的阻止调用,则在阻塞调用完成之前,您将无法获得Timer事件,按钮单击事件或任何其他Windows消息类型事件。如果您真的需要这种行为,可能需要考虑使用线程。