Foxtable(狐表)用户栏目专家坐堂 → 请教生成图表问题


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

主题:请教生成图表问题

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


加好友 发短信
等级:小狐 帖子:349 积分:3329 威望:0 精华:0 注册:2016/3/8 18:13:00
请教生成图表问题  发帖心情 Post By:2017/12/9 10:00:00 [只看该作者]

老师,我在按键单击事件里面写代码控制生成一个图表。发现如果不停单击按键,图表就会不停增加相同内容。

请问如何实现控制单击次数不影响生成的图表

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/9 10:18:00 [只看该作者]

贴出完整代码说明

Dim Chart As WinForm.Chart '定义一个图表变量
Dim
 Series As WinForm.ChartSeries '定义一个图系变量
Chart= e.Form.Controls(
"Chart1"' 引用窗口中的图表
Chart.SeriesList.Clear() 
'清除图表原来的图系
Series = Chart.SeriesList.Add() 
'增加一个图系

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


加好友 发短信
等级:小狐 帖子:349 积分:3329 威望:0 精华:0 注册:2016/3/8 18:13:00
  发帖心情 Post By:2017/12/9 11:30:00 [只看该作者]

第二次单击按键就自动退出。

 

代码是写在按键控件里面的

 

'首先生成统计表
Dim dt As DataTable
Dim b As New GroupTableBuilder("统计表1",DataTables("产品"),"产品 = '电脑'")
b.Groups.AddDef("月份")

b.Groups.AddDef("产品")
b.Groups.AddDef("型号")
b.Groups.AddDef("数量")
b.Groups.AddDef("金额")
b.Totals.AddDef("产品",AggregateEnum.Count,"订单数") '根据客户列来统计记录数,也就是订单数
dt = b.Build


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("统计表1") '定义一个变量t引用数据表
Chart= Forms("图表").Controls("Chart1") ' 引用窗口中的图表
Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.Pie '图表1类型改为Bar(条形)
For Each r As Row In t.Rows
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Length = 1 '一个系列只能包括一个值
    Series.Text = r("型号") & "(" & r("数量") & ")" '设置图系的标题
    Series.Y(0) = r("数量") '指定值
Next
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.East '图列显示在东方(右方)

 

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

[此贴子已经被作者于2017/12/9 11:32:04编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/9 11:44:00 [只看该作者]

Dim b As New GroupTableBuilder("统计表1",DataTables("产品"),"产品 = '电脑'")
b.Groups.AddDef("月份")

b.Groups.AddDef("产品")
b.Groups.AddDef("型号")
b.Groups.AddDef("数量")
b.Groups.AddDef("金额")
b.Totals.AddDef("产品",AggregateEnum.Count,"订单数") '根据客户列来统计记录数,也就是订单数
b.Build


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("统计表1") '定义一个变量t引用数据表
Chart= Forms("图表").Controls("Chart1") ' 引用窗口中的图表

Chart.SeriesList.Clear() '清除图表原来的图系
Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.Pie '图表1类型改为Bar(条形)
For Each r As Row In t.Rows
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Length = 1 '一个系列只能包括一个值
    Series.Text = r("型号") & "(" & r("数量") & ")" '设置图系的标题
    Series.Y(0) = r("数量") '指定值
Next
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.East '图列显示在东方(右方)

[此贴子已经被作者于2017/12/9 11:44:42编辑过]

 回到顶部