以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 筛选后生成图表的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=61077) |
-- 作者:bagih -- 发布时间:2014/12/6 16:01:00 -- 筛选后生成图表的问题 我在系统菜单里面 先筛选后生成图表,一切正常 执行以下代码后,生成的图表是没有筛选过的。 通过以下代码就出错了,各位老师帮心看一下,哪里不对。谢谢了 Dim Filter As String With e.Form.Controls("ComboBox4") If .Value IsNot Nothing Then Filter = "血糖监测_时间段 = \'" & .Value & "\'" End If End With If Filter > "" Then Tables("血糖监测").Filter = Filter End If Dim Chart As WinForm.Chart \'定义一个图表变量 Dim Series As WinForm.ChartSeries \'定义一个图系变量 Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表 Chart.DataSource = "血糖监测" \'设置绑定表 Chart.SeriesList.Clear() \'清除图表原来的图系 Chart.AxisX.Major = 4 \'主刻度间隔值为5000 Series = Chart.SeriesList.Add() \'增加第一个图系 Series.TooltipText = "{#XVAL}, 血糖值:{#YVAL}" Chart.AxisX.DateType = True \'X轴是日期型 Chart.AxisX.AnnoFormatString = "MM月dd日" \'设置Y轴的标示格式 Series.Text = "血糖监测_血糖值" Series.X.DataField = "血糖监测_检测日期" \'X轴绑定到产品列 Series.Y.DataField = "血糖监测_血糖值" \'Y轴绑定到数量列 Chart.AxisX.AnnoRotation = - 45 \'X轴标示逆时针旋转45度 [此贴子已经被作者于2014-12-6 16:10:33编辑过]
|
-- 作者:land089 -- 发布时间:2014/12/6 16:07:00 -- 把你的错误贴出来啊! |
-- 作者:bagih -- 发布时间:2014/12/6 16:11:00 -- 执行代码后,图表数据是没经过筛选的。 |
-- 作者:land089 -- 发布时间:2014/12/6 16:24:00 -- 试试这个 If Filter <> "" Then Tables("血糖监测").Filter = Filter End If
|
-- 作者:bagih -- 发布时间:2014/12/6 16:38:00 -- 不是这个地方的问题 此主题相关图片如下:qq图片20141206163724.png |
-- 作者:有点甜 -- 发布时间:2014/12/7 10:05:00 -- 不要用绑定的方式,绑定的时候就是针对全部数据的。
请用代码方式生成 http://www.foxtable.com/help/topics/0967.htm
|
-- 作者:bagih -- 发布时间:2014/12/8 13:24:00 -- 能再具体指导一下吗,谢谢啦,我自己弄的还是出错。 .NET Framework 版本:2.0.50727.8009 Foxtable 版本:2014.11.11.1 错误所在事件:窗口,化验图表,Button1,Click 详细错误信息: 未将对象引用设置到对象的实例。 Dim Filter As String With e.Form.Controls("ComboBox4") If .Value IsNot Nothing Then Filter = "血糖监测_时间段 = \'" & .Value & "\'" End If End With If Filter > "" Then Tables("血糖监测").Filter = Filter End If Dim Chart As WinForm.Chart \'定义一个图表变量 Dim Series As WinForm.ChartSeries \'定义一个图系变量 Dim t As Table = Tables("血糖监测") \'定义一个变量t引用数据表 Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表 Chart.SeriesList.Clear() \'清除图表原来的图系 Series = Chart.SeriesList.Add() \'增加一个图系 Series.Text = "血糖监测_血糖值" For i As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置 Series.X(i) = t.Rows(i)("血糖监测_检测日期") \'指定水平坐标 Series.Y(i) = t.Rows(i)("血糖监测_血糖值") \'指定垂直坐标 Next Chart.AxisX.AnnoRotation = - 45 \'X轴标示逆时针旋转45度 |
-- 作者:有点甜 -- 发布时间:2014/12/8 14:22:00 -- 代码应该是没问题的,请上传一个例子测试。 |