以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  实现多窗口查询、单击表头排序、在窗口中快速插入字段!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=652)

--  作者:cpayinyuan
--  发布时间:2008/9/22 10:10:00
--  实现多窗口查询、单击表头排序、在窗口中快速插入字段!
   首先感谢贺老师能够按受我和一大群热心用户的意见,在窗口中增加DataList控件,以及在窗口中增加快速绑定字段的功能,上次关于多窗口的争论,在贺老师的努力下,终于有了一个相对圆满的结果!   经过测试,这个Datalist不但可以筛选,而且可以双击列名排序,的确非常方便;另外那个在窗口中快速绑定字段的功能,也非常方便,比易表中灵活多了。

     经过这次事件,我认为,其实每个人的观点不同是很正常的,有些人认为对于一个新软件应着重于对各项功能的学习,但我更侧重于找软件中存在的问题与不足,所以,我希望以后再提出什么不同建议的时候,不要再有人(尤其是版主)不问清红皂白先批评我一番!再者,我还想再说一下,以前有人多次批评我不要反复强调一件事,只要一句话把自己的观点说明即可!我非常不赞同这个观点,如果照这个观点,法官审判案件时,只要用10分钟的时候,双方陈述一下自己的观点即可,根本不需要反复辩论了,这样究竟对与不对,不言自明!对于比较重要性的、专业性的问题,有很多时候是需要辩论的、争论的,持有不同的观点的每个人都可以参与争论,但千万不可在没有搞清楚别人的意见是怎么回事的时候(既然没搞清楚,当然也不会理解别人意见的重要性),就随意批评别人、压制别人的意见!

   
[此贴子已经被smileboy于2008-9-22 14:12:11编辑过]

--  作者:贺老六
--  发布时间:2008/9/22 10:17:00
--  
以下是引用cpayinyuan在2008-9-22 10:10:00的发言:
   首先感谢贺老师能够按受我和一大群热心用户的意见,在窗口中增加DataList控件,以及在窗口中增加快速绑定字段的功能,上次关于多窗口的争论,在贺老师的努力下,终于有了一个相对圆满的结果!我认为,其实每个人的观点是很正常的,有些人认为对于一个新软件应着重于对各项功能的学习,但我更侧重找软件中存在的问题与不足,所以,我希望以后在提出什么不同建议的时候,不要再有人不问清红皂白先批评我一番!再者,我还想再说一下,还要人批评我不要反笔强调一件事,只要一句话把自己的观点说明即可,我不赞同这个观点,如果照这个观点,法官审判案件时,只要用10分钟的时候,双方陈述一下自己的观点即可,根本不需要反复辩论了,究竟对不对,不言自明!对于以此重要性的、专业性的问题,有很多时候是需要辩论的、争论的,希望在没有搞清楚别人的意见是怎么回事的时候,不要随意批评别人、压制别人的意见!
    在今天看到这个改进后,我在兴奋的同时,对这个功能首先进行测试,发现了一个问题,就是在对DataList控件的RowFilter或者Filter(筛选条件)进行设置的时候,必须在DataList 所在的窗口才能进行设置。这在实际中是很不方便的,如我上次所说的那个事例,在很多时候,DataList 的筛选条件要依据其他窗口中的内容动态生成,DataList的筛选条件如果不能在其他窗口中设置,将会很不方便(好像用全局变量也不方便)。希望贺老师和其他老师测试一下,是我没有设置对还是怎么回事?


RowFilter,肯定可以在其他窗口设置的,应该是你的代码有误。
如果要在其他窗口设置:
forms("含datalist窗口的名称").Controls("datalist的名称").RowFilter = "筛选条件"

[此贴子已经被作者于2008-9-22 12:18:20编辑过]

--  作者:eric803
--  发布时间:2008/9/22 10:23:00
--  
以下是引用cpayinyuan在2008-9-22 10:10:00的发言:
   首先感谢贺老师能够按受我和一大群热心用户的意见,在窗口中增加DataList控件,以及在窗口中增加快速绑定字段的功能,上次关于多窗口的争论,在贺老师的努力下,终于有了一个相对圆满的结果!我认为,其实每个人的观点是很正常的,有些人认为对于一个新软件应着重于对各项功能的学习,但我更侧重找软件中存在的问题与不足,所以,我希望以后在提出什么不同建议的时候,不要再有人不问清红皂白先批评我一番!再者,我还想再说一下,还要人批评我不要反笔强调一件事,只要一句话把自己的观点说明即可,我不赞同这个观点,如果照这个观点,法官审判案件时,只要用10分钟的时候,双方陈述一下自己的观点即可,根本不需要反复辩论了,究竟对不对,不言自明!对于以此重要性的、专业性的问题,有很多时候是需要辩论的、争论的,希望在没有搞清楚别人的意见是怎么回事的时候,不要随意批评别人、压制别人的意见!
  

  有理, 顶你一个!
[此贴子已经被作者于2008-9-22 10:23:42编辑过]

--  作者:cpayinyuan
--  发布时间:2008/9/22 10:24:00
--  
以下是引用贺老六在2008-9-22 10:17:00的发言:



呵呵,兄台也不要郁闷了。

至于RowFilter,肯定可以在其他窗口设置的,应该是你的代码有误。
如果要在其他窗口设置:
forms("含datalist窗口的名称").Controls("datalist的名称").RowFilter = "筛选条件"

[此贴子已经被作者于2008-9-22 10:20:55编辑过]

贺老师,我看不出我的代码错在哪儿啊,你看一下我的代码,就是我上次上传的例子,在窗口1设置的关于窗口2的代码:
Dim dst As WinForm.DataList = Forms("窗口2").Controls("DataList1")
DIM kh as string=Tables("客户销售表").Current("客户名称")
dst.DataTable = DataTables("客户销售明细表")
dst.Build()
dst.RowFilter ="[客户名称]=\'" & kh & "\'"
dst.Build()
if Forms("窗口2").Opened=False
   Forms("窗口2").Open()
end if

[此贴子已经被作者于2008-9-22 10:26:03编辑过]

--  作者:贺老六
--  发布时间:2008/9/22 10:27:00
--  
没有看出问题,检查一下窗口名称、控件名称、表名、列名是否正确,特别是窗口名称和控件名称。
--  作者:cpayinyuan
--  发布时间:2008/9/22 10:28:00
--  
以下是引用贺老六在2008-9-22 10:27:00的发言:
没有看出问题,检查一下窗口名称、控件名称、表名、列名是否正确,特别是窗口名称和控件名称。

我已经仔细检查过多次,没有看出问题,麻烦您把这个代码复制到文件中试一下,估计是软件的问题。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:客户销售管理.table

[此贴子已经被作者于2008-9-22 10:29:16编辑过]

--  作者:cpayinyuan
--  发布时间:2008/9/22 11:08:00
--  
再者,这个DataList为什么没有行号吗?虽然没有大问题,但有了总比没有好啊?
--  作者:贺老六
--  发布时间:2008/9/22 11:08:00
--  
你必须先打开窗口2,才可以对窗口2进行设置。
如果窗口没打开,控件不存在,不存在设置的问题。
[此贴子已经被作者于2008-9-22 11:25:21编辑过]

--  作者:eric803
--  发布时间:2008/9/22 11:23:00
--  
 试了一下:

Forms("窗口2").Open()

Dim dst As WinForm.DataList = Forms("窗口2").Controls("DataList1")
DIM kh as string=Tables("客户销售表").Current("客户名称")
dst.DataTable = DataTables("客户销售明细表")

dst.RowFilter ="[客户名称] = \'" & kh & "\'"
dst.Build()

OK.解决!

--  作者:cpayinyuan
--  发布时间:2008/9/22 11:50:00
--  
以下是引用贺老六在2008-9-22 11:08:00的发言:
你必须先打开窗口2,才可以窗口2设置。
如果窗口没打开,控件不存再,不存在设置的问题。

哈哈,已经搞定,的确非常好用。
还是再问一下贺老师,在DataList中显示的表,与在主窗口中显示的表,都有哪些主要的区别呢?