Foxtable(狐表)用户栏目专家坐堂 → 保存提示框


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

主题:保存提示框

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


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
保存提示框  发帖心情 Post By:2017/6/10 17:12:00 [只看该作者]

老师,请问下,这样的功能要怎么实现,我如果想当软件有新的数据输入后,三分钟内如果没有保存,那么就会跳出提示框,你还未保存,并有两个按钮供选择 

1.现在保存  2.在等一会儿(如果选择等一会儿,就会默认在30分钟后再跳出提示框)

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/10 17:38:00 [只看该作者]

计划管理,新增任务,初始间隔可以设置为10000,代码

If vars("state") = 0 Then '已经保存过
    For Each dt As DataTable In DataTables
        If dt.HasChanges Then
            MyTimers("计划1").Interval = 180000 '设置为3分钟后提示
            vars("state") = 1
            Return
        End If
    Next
ElseIf vars("state") = 1 Then '3分钟提示
    If MessageBox.Show("数据已经修改,是否现在保存,选否30分钟后再提示","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 10000 '设置为每10秒后检测是否改动,根据需要自己改
        vars("state") = 0
    Else
        MyTimers("计划1").Interval = 1800000 '设置为30分钟后提示
        vars("state") = 2
    End If
ElseIf vars("state") = 2 Then '30分钟提示
    If MessageBox.Show("数据已经修改,是否现在保存,选否30分钟后再提示","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 10000 '设置为每10秒后检测是否改动,根据需要自己改
        vars("state") = 0
    End If
End If



 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/6/10 17:55:00 [只看该作者]

老师,这个是什么意思,在菜单档做个按钮还是什么,放在什么事件

计划管理,新增任务,初始间隔可以设置为10000  

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/11 16:04:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/6/26 19:41:00 [只看该作者]

老师,请下面的代码3分钟后跳出提示,如果我不选择的话,每隔三分钟就会跳出新的提示框,能不能改下代码,我如果不选择的话,就保持第一个提示框在界面上
,不会过三分钟后重复跳出一样的提示框

If vars("state") = 0 Then '已经保存过
    For Each dt As DataTable In DataTables
        If dt.HasChanges Then
            MyTimers("计划1").Interval = 180000 '设置为3分钟后提示
            vars("state") = 1
            Return
        End If
    Next
ElseIf vars("state") = 1 Then '3分钟提示
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 60000 '设置为每60秒后检测是否改动,根据需要自己改
        vars("state") = 0
    Else
        MyTimers("计划1").Interval = 900000 '设置为15分钟后提示
        vars("state") = 2
    End If
ElseIf vars("state") = 2 Then '20分钟提示
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 900000 '设置为每10秒后检测是否改动,根据需要自己改
        vars("state") = 0
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/26 20:36:00 [只看该作者]

If vars("state") = 0 Then '已经保存过
    For Each dt As DataTable In DataTables
        If dt.HasChanges Then
            MyTimers("计划1").Interval = 180000 '设置为3分钟后提示
            vars("state") = 1
            Return
        End If
    Next
ElseIf vars("state") = 1 Then '3分钟提示
    MyTimers("计划1").Enabled= False
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 60000 '设置为每60秒后检测是否改动,根据需要自己改
        vars("state") = 0
    Else
        MyTimers("计划1").Interval = 900000 '设置为15分钟后提示
        vars("state") = 2
    End If
    
ElseIf vars("state") = 2 Then '20分钟提示
    MyTimers("计划1").Enabled= False
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 900000 '设置为每10秒后检测是否改动,根据需要自己改
        vars("state") = 0
    End If
End If
MyTimers("计划1").Enabled= True

 回到顶部
帅哥哟,离线,有人找我吗?
jick0526
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:715 积分:6677 威望:0 精华:0 注册:2016/6/27 17:56:00
  发帖心情 Post By:2017/6/28 12:53:00 [只看该作者]

老师,请问下,下面的代码如果加上一个前提条件怎么改代码,就是在表A,表B,表C这三个表数据有
更新的情况下,才启动下面的代码
If vars("state") = 0 Then '已经保存过
    For Each dt As DataTable In DataTables
        If dt.HasChanges Then
            MyTimers("计划1").Interval = 180000 '设置为3分钟后提示
            vars("state") = 1
            Return
        End If
    Next
ElseIf vars("state") = 1 Then '3分钟提示
    MyTimers("计划1").Enabled= False
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 60000 '设置为每60秒后检测是否改动,根据需要自己改
        vars("state") = 0
    Else
        MyTimers("计划1").Interval = 900000 '设置为15分钟后提示
        vars("state") = 2
    End If
    
ElseIf vars("state") = 2 Then '20分钟提示
    MyTimers("计划1").Enabled= False
    If MessageBox.Show("数据已经修改,是否现在保存,选否15分钟后再提示, The data has been modified, whether it is now saved, selected 15 minutes after the prompt","温馨提示",MessageBoxButtons.YesNo) = DialogResult.Yes
        For Each dt As DataTable In DataTables
            dt.Save
        Next
        MyTimers("计划1").Interval = 900000 '设置为每10秒后检测是否改动,根据需要自己改
        vars("state") = 0
    End If
End If
MyTimers("计划1").Enabled= True


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/28 15:10:00 [只看该作者]

If vars("state") = 0 Then '已经保存过
    Dim nms() As String = {"表A","表B","表C"}
    For Each name As String In nms
        If DataTables(name).HasChanges Then
            MyTimers("计划1").Interval = 180000 '设置为3分钟后提示
            vars("state") = 1
            Return
        End If
    Next
......

原来下面其它代码判断所有表的地方自己学着改改

 回到顶部