Rss & SiteMap

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

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

标题:翻页条件

1楼
ycs5801 发表于:2025/1/3 10:48:00

2、然后在项目事件AfterOpenProject中设置代码,使得打开项目后,自动加载第一页:

With DataTables("订单")
    .LoadFilter = ""
'一定要清除加载条件
    .LoadTop =
20
    .LoadPage =
0
    .Load()

End
With

提示:由于已经在第一步设置了加载条件"[_Identify] Is Null",所以必须在AfterOpenProject事件中清除此条件,否则不会加载任何数据。


各按钮的代码如下:

按钮 代码
第一页 With DataTables("订单")
    If
.LoadPage <> 0
Then
       .LoadTop =
20
       .LoadPage =
0
       .Load()

    End
If
End
With
下一页 With DataTables("订单")
   
If .LoadPage < .TotalPages - 1 Then
        .LoadPage = .LoadPage + 1
        .Load()
   
End If
End
With
上一页 With DataTables("订单")
   
If .LoadPage > 0 Then
        .LoadPage = .LoadPage - 1
        .Load()
   
End If
End
With
最末页 With DataTables("订单")
   
If .LoadPage < .TotalPages - 1 Then
        .LoadPage = .TotalPages - 1
        .Load()
   
End If
End
With



这个分页的示例,如果我需要临时改变筛选条件,比如增加性别列为“男”,这时候需要在所有翻页代码中加入 .LoadFilter = ""条件吗

2楼
有点蓝 发表于:2025/1/3 11:02:00
不需要,改一次LoadFilter 条件即可
3楼
ycs5801 发表于:2025/1/4 20:50:00
现在想在一个窗口中不断地切换筛选条件,比如以性别筛选,然后又改成以民族,然后可能又改成年龄,等等这样的不断变化的条件,这种一般应该怎样 设计合理一些?比如是在菜单栏做几个不同的菜单,点击哪个就会按哪个条件筛选?还是做成按钮方式,多个按钮在窗口上,点哪个按钮就切换哪个条件,比较方便快捷合理的方式有哪种?有没有实例可供参考?
4楼
有点蓝 发表于:2025/1/5 20:22:00
自己测试不同用法,或者做了给用户使用,觉得哪个用法好用,或者喜欢哪个用法就要那个
[此贴子已经被作者于2025/1/5 20:22:10编辑过]
5楼
ycs5801 发表于:2025/1/10 22:42:00
我现在先筛选数据 ,然后再进行翻页,下一页按钮无效,代码如下:
筛选按钮代码:
Dim Filter As String
With e.Form.Controls("布控原因")
    If .Value IsNot Nothing Then
        Filter &= "布控原因 = '" & .Value & "'"
    End If
End With
With e.Form.Controls("检查类别")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = filter & "(进检类别 = '" & .Value & "' or 出检类别='" & .Value & "')"
    End If
End With

If Filter > "" Then
    With Tables("检疫资料").DataTable
        .LoadFilter =  Filter
        .LoadOrder = "录入时间 Desc"
        .Load()
    End  With
    Tables("检疫资料").Sort = "录入时间 DESC"
End If

下一页代码:
With DataTables("检疫资料")
    If .LoadPage < .TotalPages - 1 Then
        .LoadPage = .LoadPage + 1
        .Load()
    End If
End With

6楼
有点蓝 发表于:2025/1/11 9:31:00
没有指定LoadTop,http://www.foxtable.com/webhelp/topics/1928.htm,看示例二
7楼
ycs5801 发表于:2025/1/11 10:49:00
查询按钮:
If Filter > "" Then
    With Tables("检疫资料").DataTable
        .LoadFilter =  Filter
        .LoadOrder = "录入时间 Desc"
        .LoadTop=10
        .Load()
    End  With
    Tables("检疫资料").Sort = "录入时间 DESC"

现在只加载很少一部分数据,怎样在每次点查询的时候,好像是在我上次筛选后的结果中筛选的数据。

8楼
有点蓝 发表于:2025/1/11 11:02:00
没看懂想表达的什么意思。

上面代码就是按条件加载前10行数据
9楼
ycs5801 发表于:2025/1/11 13:48:00
假如我表中有100条数据,第一次根据条件筛选,筛选出0条数据,第二次改变条件,即使有这个数据,也筛选不出来了
10楼
有点蓝 发表于:2025/1/11 14:02:00
不可能的。2次分别写了什么代码?
共17 条记录, 每页显示 10 条, 页签: [1] [2]

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

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