Foxtable(狐表)用户栏目专家坐堂 → [求助]Combobox动态筛选表格内容


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

主题:[求助]Combobox动态筛选表格内容

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


加好友 发短信
等级:幼狐 帖子:153 积分:1174 威望:0 精华:0 注册:2013/6/19 10:54:00
[求助]Combobox动态筛选表格内容  发帖心情 Post By:2013/7/2 14:01:00 [只看该作者]

现在有个界面,界面跟简单,一个Combobox,一个Table。Table绑定了一张表,该表中有一列字段是统计年份,取值有2011,2012,2013。Combobox现在也能够自动列出该表统计年份的值。现在想通过Combobox的SelectedIndexChanged实现选择一个列表项目后下方的表就显示该年的数据信息。请问应该怎么实现?

界面如下:

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130702140133.png
图片点击可在新窗口打开查看
求指教!

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/2 14:05:00 [只看该作者]

Combobox ENTER事件中. 把 ComboLIstString 设置为这个表的  统计年分裂即可   

如果希望不重复..可以使用 GetuniqueValues 来获得不重复值集合 再赋值添加到Combobox 即可

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


加好友 发短信
等级:幼狐 帖子:153 积分:1174 威望:0 精华:0 注册:2013/6/19 10:54:00
  发帖心情 Post By:2013/7/2 14:11:00 [只看该作者]

麻烦详细说明下,不是很懂!试了一下不行。

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/2 14:13:00 [只看该作者]

实在不会就上个例子吧.

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


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

看看SelectedIndexChanged的代码这样设置行不行:

 

Dim y As integer = e.Sender.Text

Dim dt1 As New Date(y,1,1)

Dim dt2 As New Date(y,12,31)

Tables("xxx").filter =  “日期 >= #" & dt1 & "# And 日期 <= #" & dt2 & "#" 


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/2 14:22:00 [只看该作者]

晕,刚才没看到你还有第二个需求.

那么在SelectedIndexChanged

Tables("xxx").filter="统计年份 = " & e.Sender.Text

如果是字符串列 

Tables("xxx").filter="统计年份 = '" & e.Sender.Text & "'"


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


加好友 发短信
等级:幼狐 帖子:153 积分:1174 威望:0 精华:0 注册:2013/6/19 10:54:00
  发帖心情 Post By:2013/7/2 14:44:00 [只看该作者]

谢谢,已经弄好了,怪不得我说我没看懂biN的第一个回答, 大家都很牛,赞一个!!!

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


加好友 发短信
等级:幼狐 帖子:153 积分:1174 威望:0 精华:0 注册:2013/6/19 10:54:00
  发帖心情 Post By:2013/7/2 15:26:00 [只看该作者]

现在还有一个问题,我在那个窗口界面下放了几个lable和textbox,用于显示表格的某些统计信息,希望在selectedindexchanged事件触发的时候,显示的表格的数据就会自动计算好然后填充到我的textbox中,但是不知道怎么弄呢?

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130702152311.png
图片点击可在新窗口打开查看
表中计划运行时间是固定值:24*365,实际运行时间就是某年“运行时间(H)”列的sum汇总值,其他的反正可以算出来,就告诉我这两个怎么去实现就行了。

界面中的textbox我都设为只读了,另外修改了一下背景颜色,应该不会影响吧?

另外贴上我的selectedindexchanged的代码:

Dim cmb As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim txt1 As String = e.Form.Controls("TextBox1").Value
Dim txt2 As String = e.Form.Controls("TextBox2").Text
Dim txt3 As String = e.Form.Controls("TextBox3").Text
Dim txt4 As String = e.Form.Controls("TextBox4").Text
Dim txt5 As String = e.Form.Controls("TextBox5").Text
Dim txt6 As String = e.Form.Controls("TextBox6").Text
Dim txt7 As String = e.Form.Controls("TextBox7").Text
Dim txt8 As String = e.Form.Controls("TextBox8").Text
Dim txt9 As String = e.Form.Controls("TextBox9").Text
Dim txt10 As String = e.Form.Controls("TextBox10").Text
Dim str As String = cmb.Value
Dim tbl As Table = Tables("设备运行表")
If str IsNot Nothing Then
    tbl.Filter = "统计年份 = " &  "'" & str & "'"
    txt1 = 1
    'txt2 = tbl.
Else
    tbl.Filter = ""
End If


 回到顶部