以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教生成图表问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=110773)

--  作者:weipeng6999
--  发布时间:2017/12/9 10:00:00
--  请教生成图表问题
老师,我在按键单击事件里面写代码控制生成一个图表。发现如果不停单击按键,图表就会不停增加相同内容。

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

--  作者:有点蓝
--  发布时间: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
--  发布时间: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编辑过]

--  作者:有点蓝
--  发布时间: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编辑过]