Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:保存按钮和进度条不同步,请帮忙修改下

1楼
lrh9537 发表于:2024/3/7 16:27:00


保存按钮和进度条不同步,请帮忙修改下
怎么实现显示%?

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看



Dim Result As DialogResult
Result = MessageBox.Show("保存数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    Dim p As WinForm.ProgressBar
    p = e.Form.Controls("ProgressBar1")
    p.Maximum = MainTable.Rows.Count '设置最大值
    p.Minimum = 0 '设置最小值
    p.Value = 0 '设置当前值
    For i As Integer = 0 To MainTable.Rows.Count - 1
        MainTable.Rows(i)("序号") = i 
        If i Mod 500 = 0 Then
            p.Value = i '当前值为已经完成的行数
        End If
        For Each dt As DataTable In DataTables
            dt.Save()
            MessageBox.Show("数据正在保存!请稍候", "提示")
        Next
    Next
    MessageBox.Show("数据保存完成!", "提示")
Else
    MessageBox.Show("数据未保存,请注意保存!", "提示")
End If
[此贴子已经被作者于2024/3/7 16:27:09编辑过]
2楼
有点蓝 发表于:2024/3/7 16:55:00
Dim Result As DialogResult
Result = MessageBox.Show("保存数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
MessageBox.Show("数据正在保存!请稍候", "提示")
dim cnt as integer = DataTables.Count
    Dim p As WinForm.ProgressBar
    p = e.Form.Controls("ProgressBar1")
    p.Maximum = cnt  '设置最大值
    p.Minimum = 0 '设置最小值
    p.Value = 0 '设置当前值
    For i As Integer = 0 To cnt  - 1
            dt.Save()
 p.Value = i
 p.Label= format(i / cnt ,"0%")
Application.DoEvents
    Next
    MessageBox.Show("数据保存完成!", "提示")
Else
    MessageBox.Show("数据未保存,请注意保存!", "提示")
End If
3楼
lrh9537 发表于:2024/3/7 17:03:00
           错误代码: p.Label = format(i / cnt , "0%")

4楼
lrh9537 发表于:2024/3/7 17:09:00
保存开始时进度条一直没动,直到保存结束才动,没走到头
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看


Dim Result As DialogResult
Result = MessageBox.Show("保存数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    MessageBox.Show("数据正在保存!请稍候", "提示")
    Dim cnt As Integer = DataTables.Count
    Dim p As WinForm.ProgressBar
    p = e.Form.Controls("ProgressBar1")
    p.Maximum = cnt '设置最大值
    p.Minimum = 0 '设置最小值
    p.Value = 0 '设置当前值
    For i As Integer = 0 To cnt - 1
        For Each dt As DataTable In DataTables
            dt.Save()
            p.Value = i
            'p.Label = format(i / cnt , "0%")
            Application.DoEvents
        Next
    Next
    MessageBox.Show("数据保存完成!", "提示")
Else
    MessageBox.Show("数据未保存,请注意保存!", "提示")
End If
5楼
有点蓝 发表于:2024/3/7 17:14:00
    p.Value = 0 '设置当前值
dim i as integer = 0
        For Each dt As DataTable In DataTables
            dt.Save()
            p.Value = i
i = i+1
            Application.DoEvents
        Next
    MessageBox.Show("数据保存完成!", "提示")
6楼
lrh9537 发表于:2024/3/8 8:29:00
两个按钮共同使用一个进度条怎么整?
图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看
7楼
有点蓝 发表于:2024/3/8 9:06:00
完全一样的用法呀
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02734 s, 2 queries.