Foxtable(狐表)用户栏目专家坐堂 → 关于列顺序批量调整的求助(商业版与开发版)


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

主题:关于列顺序批量调整的求助(商业版与开发版)

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/9/14 13:48:00 [只看该作者]

t.FindRow(dr) 只要Tables("窗口1_Table1")中的行数足够(比列数多)就没有问题,因为Dim wz As Integer = t.FindRow(dr)只是要个行号而已。

 

关键是Names(wz) = c.Name 怎么Names(wz) 到


For i As Integer = 0 To Names.Length -1
    s & = "|" & Names(i) & "|-1"
Next

里面就能够自动排序了,我还没弄明白····


[此贴子已经被作者于2011-9-14 13:49:51编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/9/14 14:21:00 [只看该作者]

以下是引用czy在2011-9-14 12:38:00的发言:

再顶老六看看。

25楼红色t为Table为“窗口1_Table1”,为什么能返回正确值?百思不得其解。

 

老曹,之所欲正确,纯属凑巧的,因为findrow只是根据_identify的值查找,t.FindRow(dr),就是先获得dr的_Identify的值,然后在t这个表中找出-Identify等于这个值的行的位置。

所以尽管dr不属于t表,也不会报错的,凑巧的话,结果也会正确。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/9/14 14:23:00 [只看该作者]

以下是引用czy在2011-9-14 13:04:00的发言:

另外我认为SetColVisibleWidth还是有瑕疵的,比如分别执行下面的两行代码,就会出现问题。当然这主要原因设置出了问题,设置出问题后出现这种现象正不正常,值得商榷

 

Tables("表A").SetColVisibleWidth("第一列|80||80|第二列|80|第三列|80")

Tables("表A").SetColVisibleWidth("|80|第二列|80|第三列|80")

 

问题收到,我搞定。


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/9/14 16:26:00 [只看该作者]

以下是引用ybil在2011-9-14 13:13:00的发言:
Dim t As Table = Tables("窗口1_Table1")
Dim t1 As Table = Tables("尺码档案")
.....
確實耐人尋味:t.FindRow(dr)和t1.FindRow(dr)得到的結果一樣!

請教C版:
t.SetColVisibleWidth("单号|-1|备注|-1")中,"-1"作何解?默認列寬?最小列寬?

 

-1为默认宽度


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/9/14 16:29:00 [只看该作者]

以下是引用ybil在2011-9-14 13:24:00的发言:

呵呵,C版這個例子特例點,這樣可能好點:

Tables("A").SetColVisibleWidth("|第一列|80|第二列|80|第三列|80")

動態合成SetColVisibleWidth的字符串有時也不是吹灰

 

这个问题其实发现很长时间了,只是借这个贴来说明一下。


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/9/14 16:33:00 [只看该作者]

以下是引用mr725在2011-9-14 13:48:00的发言:

t.FindRow(dr) 只要Tables("窗口1_Table1")中的行数足够(比列数多)就没有问题,因为Dim wz As Integer = t.FindRow(dr)只是要个行号而已。

 

关键是Names(wz) = c.Name 怎么Names(wz) 到


For i As Integer = 0 To Names.Length -1
    s & = "|" & Names(i) & "|-1"
Next

里面就能够自动排序了,我还没弄明白····


[此贴子已经被作者于2011-9-14 13:49:51编辑过]

 

wz是行号,Names是数组,是将取到的行号添加到数组集合中。

 

假设wz等于10,c.Name等于A,Names(wz) = c.Name,就是将名称为“A”添加到数组中第十一的位置。


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2011/9/14 16:35:00 [只看该作者]

以下是引用狐狸爸爸在2011-9-14 14:21:00的发言:

 

老曹,之所欲正确,纯属凑巧的,因为findrow只是根据_identify的值查找,t.FindRow(dr),就是先获得dr的_Identify的值,然后在t这个表中找出-Identify等于这个值的行的位置。

所以尽管dr不属于t表,也不会报错的,凑巧的话,结果也会正确。

 

哈哈,什么事都有可能,这次反正我是信了。


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/9/14 16:45:00 [只看该作者]

以下是引用czy在2011-9-14 16:33:00的发言:

 

wz是行号,Names是数组,是将取到的行号添加到数组集合中。

 

假设wz等于10,c.Name等于A,Names(wz) = c.Name,就是将名称为“A”添加到数组中第十一的位置。

呵呵,明白了···  谢谢 C 版!


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


加好友 发短信
等级:超级版主 帖子:521 积分:4910 威望:0 精华:7 注册:2008/9/2 22:22:00
  发帖心情 Post By:2011/9/14 17:15:00 [只看该作者]

以下是引用czy在2011-9-14 16:26:00的发言:

 

-1为默认宽度


这个好!晕,帮助文件里好像没说这个.多谢C版!


 回到顶部
总数 39 上一页 1 2 3 4