Rss & SiteMap

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

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

标题:窗口Table列显示代码(改良版)

1楼
reachtone 发表于:2009/8/23 13:55:00

在老六代码的启发下,本人做了一个类似于DataList的显示函数。不仅可以自动隐藏无关列,还可以按照设定的列项目自动显示宽度,列显示顺序为设定的列名顺序。datalist函数代码如下:

'显示列
For Each c As Col In Args(0).Cols
    c.Visible = Args(1).Contains(c.name & ",")
Next
'列宽度及显示位置
Dim i as Integer = 0
Dim ColName as String
Dim Vals As New List(Of String)
Vals.AddRange(Args(1).Split("|"))
Args(0).Redraw = False
For Each Val as String in Vals
    ColName = Val.substring(0,Val.indexof(","))   '取得列名称
    Args(0).Cols(ColName).Move(i)                 '移动位置
    Args(0).Cols(ColName).Width = Val.substring(Val.indexof(",")+1)    '设置宽度
    i = i + 1
Next
Args(0).Redraw = True

[此贴子已经被狐狸爸爸于2009-8-24 15:53:05编辑过]
2楼
reachtone 发表于:2009/8/23 13:58:00
调用方法:
Functions.Execute("DataList",表名,列项目)


如:
Functions.Execute("DataList",Tables("窗口1_Table1"),"规格,100|高,70|宽,70|尺寸,158|面积,70|占版数,50")
[此贴子已经被作者于2009-8-23 14:47:17编辑过]
3楼
狐狸爸爸 发表于:2009/8/23 14:14:00
不错,很方便的
4楼
yangming 发表于:2009/8/23 14:21:00

学习研究!

5楼
kylin 发表于:2009/8/23 15:05:00

 好啊,收藏!

6楼
czy 发表于:2009/8/23 16:49:00
学习!

7楼
migold 发表于:2009/8/23 17:19:00
学习一下,今晚再试试
8楼
blackzhu 发表于:2009/8/23 20:22:00
以下是引用reachtone在2009-8-23 13:58:00的发言:
调用方法:
Functions.Execute("DataList",表名,列项目)


如:
Functions.Execute("DataList",Tables("窗口1_Table1"),"规格,100|高,70|宽,70|尺寸,158|面积,70|占版数,50")
[此贴子已经被作者于2009-8-23 14:47:17编辑过]

老大能不能做个小例子看看

9楼
狐狸爸爸 发表于:2009/8/24 8:39:00

楼主已经给出例子了,注意他的DataList,指的是自定义函数的名称,并非我们通常所说的DataList

10楼
baoxyang 发表于:2009/8/24 10:32:00

加入一行代码为改变显示列的位置,
With Args(0)   '数据表
    Dim i as Integer = 0
    For Each c As Col In .Cols
        Dim Vals() As String = Args(1).Split("|")
        c.Visible = Args(1).Contains(c.name & ",")      '加逗号可以保证列名完全匹配
        If c.Visible = True
            .cols(c.name).move(i)
            c.Width = Vals(i).substring(Vals(i).indexof(",")+1)
            i = i + 1
        End If
    Next
End With
红色部分,怎么不生效呢?目的为,把显示列的位置进行调整,请老大看看,这样是否写错了?

共17 条记录, 每页显示 10 条, 页签: [1] [2]

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

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