Foxtable(狐表)用户栏目专家坐堂 → 起止页如何自动生成


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

主题:起止页如何自动生成

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


加好友 发短信
等级:三尾狐 帖子:787 积分:6175 威望:0 精华:0 注册:2015/7/25 19:14:00
起止页如何自动生成  发帖心情 Post By:2016/2/18 17:06:00 [只看该作者]

已知页数,起止页如何自动生成


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


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/18 18:00:00 [只看该作者]

Dim drs As List(Of DataRow) = DataTables("表A").Select("第三列 is not null", "_Sortkey")

For i As Integer = 0 To drs.count - 1
    Dim dr As DataRow = drs(i)
    If i = 0 Then
        dr("第四列") = "1-" & dr("第三列")
    ElseIf i = drs.count-1 Then
        dr("第四列") = dr("第三列") & "-" & dr("第三列")
    Else
        dr("第四列") = dr("第三列") & "-" & drs(i+1)("第三列")-1
    End If
Next


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


加好友 发短信
等级:三尾狐 帖子:787 积分:6175 威望:0 精华:0 注册:2015/7/25 19:14:00
  发帖心情 Post By:2016/2/18 19:50:00 [只看该作者]

大红袍老师,按照你的方法做了这个实例,帮着看看解决一下起始页的问题

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160218195317.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2016/2/18 19:53:50编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/18 20:15:00 [只看该作者]

单独做一个按钮生成

 

Dim drs As List(Of DataRow) = DataTables("目录").Select("页号 is not null", "页号")

For i As Integer = 0 To drs.count - 1
    Dim dr As DataRow = drs(i)
    If i = drs.count-1 Then
        dr("起止页") = val(dr("页号")) & "-" & val(dr("页号"))
    Else
        dr("起止页") = val(dr("页号")) & "-" & val(drs(i+1)("页号"))-1
    End If
Next

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/18 20:24:00 [只看该作者]

如果写到datacolchanged,就这样写

 

If e.DataCol.name = "页号" Then
    If e.DataRow.IsNull("页号") Then
        e.DataRow("起止页") = Nothing
    Else
        Dim fdr As DataRow = DataTables("目录").find("页号 < '" & e.DataRow("页号") & "'", "页号 desc")
        If fdr IsNot Nothing
            fdr("起止页") = val(fdr("页号")) & "-" & val(e.DataRow("页号"))-1
        End If
        fdr = DataTables("目录").find("页号 > '" & e.DataRow("页号") & "'", "页号")
        If fdr Is Nothing Then
            e.DataRow("起止页") = val(e.DataRow("页号")) & "-" & val(e.DataRow("页号"))
        Else
            e.DataRow("起止页") = val(e.DataRow("页号")) & "-" & val(fdr("页号"))-1
        End If
    End If
End If


 回到顶部