Foxtable(狐表)用户栏目专家坐堂 → [推荐]进度条显示异常


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

主题:[推荐]进度条显示异常

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[推荐]进度条显示异常  发帖心情 Post By:2021/8/10 15:41:00 [只看该作者]

下面代码,进度条显示到1/4处左右就不动了,之前一直正常的,前几周升级到新版本后才出现的问题,加入调试代码MessageBox.Show(p.Value)后,一步一步的按回车执行,发现进度条可以正常显示到最后,好奇怪,请老师看看。

Forms("进度条独立窗口").Show '打开进度条独立窗口
    Dim p As WinForm.ProgressBar '定义进度条
    Dim Lab1 As WinForm.Label
    p = Forms("进度条独立窗口").Controls("ProgressBar")
    Lab1 = Forms("进度条独立窗口").Controls("Label1")
    Lab1.Text = "正在加载截止日期前的工序合并表全部数据..."
    Application.DoEvents() '即刻暂停代码的执行,重新绘制控件后,继续执行代码.
    
    Dim cmd_工序表 As New SQLCommand
    cmd_工序表.C
    cmd_工序表.CommandText = "S elect 工序,道次,卷号,母卷号,牌号,厚度,宽度,长度,重量,件数,起始时间,结束时间,投料量,成材率,作业分钟数,库存标记,往来合同,往来公司,往来内容 From {工序合并表} Where 起始时间 < '" & dtp.Value.AddDays(1) & " '"
    dt = cmd_工序表.ExecuteReader()
    
    Dim drs As List(Of DataRow) = dt.Select("", "卷号,起始时间") '指定母卷号计算
    p.Maximum = drs.Count '设置最大值
    p.Minimum = 0 '设置最小值
    If drs.Count=1 Then
        drs(0)("库存标记") = True
    Else
        For i As Integer = 1 To drs.Count - 1
            If i Mod 100 = 0 Then '每运算100条更新一次进度条
                p.Value = i '当前值为已经完成的行数
'MessageBox.Show(p.Value)
                Lab1.Text = "工序合并表加载完成,开始计算..." & i + 1 & " / " & drs.Count
                Application.DoEvents() '即刻暂停代码的执行,重新绘制控件后,继续执行代码
            ElseIf i=drs.Count-1 '当i为最大值减1时
                p.Value = drs.Count '当前值直接等于最大值
                Lab1.Text = "工序合并表加载完成,开始计算..." & drs.Count & " / " & drs.Count
                Application.DoEvents() '即刻暂停代码的执行,重新绘制控件后,继续执行代码
            End If
            If drs(i)("卷号").Contains(drs(i-1)("卷号")) Then
                drs(i-1)("库存标记") = False
            Else
                drs(i-1)("库存标记") = True
            End If
        Next
        drs(drs.Count-1)("库存标记") = True
        Lab1.Text = "完成计算,正在调整列宽与显示格式..." & drs.Count & " / " & drs.Count
        Application.DoEvents() '即刻暂停代码的执行,重新绘制控件后,继续执行代码
    End If


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109476 积分:557042 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/8/10 16:11:00 [只看该作者]

看不出什么问题,请上传实例测试

 回到顶部