以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 图表设计 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=74227)
|
-- 作者:kaituozhe
-- 发布时间:2015/9/6 18:01:00
-- 图表设计
以下这段代码是帮助中的代码,我设置的按钮名称为“chart1”,执行时提示错误:
.NET Framework 版本:2.0.50727.5485 Foxtable 版本:2014.11.11.1 错误所在事件:窗口,成本分析,Chart1,Click 详细错误信息: 无法将类型为“Foxtable.WinForm.Button”的对象强制转换为类型“Foxtable.WinForm.Chart”。这是什么原因。 Dim Chart As WinForm.Chart \'定义一个图表变量 Dim Series As WinForm.ChartSeries \'定义一个图系变量 Chart= e.Form.Controls("Chart1") \' 引用窗口中的图表 Chart.SeriesList.Clear() \'清除图表原来的图系 Series = Chart.SeriesList.Add() \'增加一个图系 Series.Length = 10 \'新增图系包括10个数据点 For i As integer = 0 to 9 \'指定每个数据点的位置 Series.X(i) = i \'指定水平坐标 Series.Y(i) = i + Rand.Next(5) \'垂直坐标用随机数生成 Next
|
-- 作者:Hyphen
-- 发布时间:2015/9/6 18:04:00
--
应该放一个图表控件名称为“chart1”,按钮名称改为其它
[此贴子已经被作者于2015/9/7 8:22:32编辑过]
|
-- 作者:大红袍
-- 发布时间:2015/9/6 18:04:00
--
你要加入一个chart控件,也就是图表控件。
|
-- 作者:kaituozhe
-- 发布时间:2015/9/6 18:16:00
--
可以了,再问一个问题,在专业报表中设计图表与在窗口中设计图表代码是一样的吗?是否13种图表都可以在专业报表中设计。
|
-- 作者:大红袍
-- 发布时间:2015/9/6 18:26:00
--
如果要在专业报表里显示,你参考 http://www.foxtable.com/help/topics/2094.htm
|
-- 作者:kaituozhe
-- 发布时间:2015/9/6 19:17:00
--
我想在专业报表中实现以下功能:
挑选每种产品,按月按部门列出直接材料(标准、实际)、间接费用(标准、实际)、直接人工(标准、实际)做对比。
|
-- 作者:kaituozhe
-- 发布时间:2015/9/6 19:18:00
--
我想在专业报表中实现以下功能:
挑选每种产品,按月按部门列出直接材料(标准、实际)、间接费用(标准、实际)、直接人工(标准、实际)做对比。
|
-- 作者:大红袍
-- 发布时间:2015/9/6 19:37:00
--
先分组生成表格,再根据统计表生成要的图表
http://www.foxtable.com/help/topics/2670.htm
http://www.foxtable.com/help/topics/0970.htm
|
-- 作者:kaituozhe
-- 发布时间:2015/9/7 19:05:00
--
还是上面那个例子,我想把材料成本分为实际与标准,间接费用也分为实际与标准,然后分别在两个图中显示,我编写了一段代码,不知道什么原因还是分不开帮我看一下:
Dim Chart As New ChartBuilder Dim Series As WinForm.ChartSeries \'定义一个图系变量 Dim t As Table = Tables("成本核算") \'定义一个变量t引用数据表 Chart.ChartType = ChartTypeEnum.Bar \'图表类型改为Bar(条形) Chart.DataSource = "成本核算" \'设置绑定表 Chart.SeriesList.Clear() \'清除图表原来的图系 Chart.AxisY.Min = 0 \'指定Y轴的最小值 \'Chart.AxisY.Max =15000 \'指定Y轴的最大值 Chart.PrintWidth = 140 \'宽度设为140毫米 Chart.PrintHeight = 100 \'高度设为100毫米 Series = Chart.SeriesList.Add() Series.Text = "标准成本_材料成本" \'设置图系的标题 Series.X.DataField = "年月" \'X轴绑定到产品列 Series.Y.DataField = "标准成本_材料成本" \'设置Y轴的绑定列 Series.DataLabelText = "{#YVAL}" Series = Chart.SeriesList.Add() Series.Text = "实际成本_材料成本" \'设置图系的标题 Series.X.DataField = "年月" \'X轴绑定到产品列 Series.Y.DataField = "实际成本_材料成本" \'设置Y轴的绑定列 Series.DataLabelText = "{#YVAL}" Chart.BarClusterWidth = 80 Chart.VisualEffect = True \'加上这一行,让你的图表更漂亮 Chart.LegendVisible = True \'显示图列 Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Dim Chart1 As New ChartBuilder Dim Series1 As WinForm.ChartSeries \'定义一个图系变量 Dim t1 As Table = Tables("成本核算") \'定义一个变量t引用数据表 Chart1.ChartType = ChartTypeEnum.Bar \'图表类型改为Bar(条形) Chart1.DataSource = "成本核算" \'设置绑定表 \'Chart1.SeriesList.Clear() \'清除图表原来的图系 Chart1.AxisY.Min = 0 \'指定Y轴的最小值 \'Chart.AxisY.Max =15000 \'指定Y轴的最大值 Chart1.PrintWidth = 140 \'宽度设为140毫米 Chart1.PrintHeight = 100 \'高度设为100毫米 Series1 = Chart.SeriesList.Add() Series1.Text = "标准成本_间接费用" \'设置图系的标题 Series1.X.DataField = "年月" \'X轴绑定到产品列 Series1.Y.DataField = "标准成本_间接费用" \'设置Y轴的绑定列 Series1.DataLabelText = "{#YVAL}" Series1 = Chart.SeriesList.Add() Series1.Text = "实际成本_间接费用" \'设置图系的标题 Series1.X.DataField = "年月" \'X轴绑定到产品列 Series1.Y.DataField = "实际成本_间接费用" \'设置Y轴的绑定列 Series1.DataLabelText = "{#YVAL}" Chart1.BarClusterWidth = 80 Chart1.VisualEffect = True \'加上这一行,让你的图表更漂亮 Chart1.LegendVisible = True \'显示图列 Chart1.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Dim doc As New PrintDoc Dim drx As new prt.RenderArea Dim rm As New prt.RenderImage Dim rm1 As New prt.RenderImage rm.Image = Chart.Image rm1.Image = Chart1.Image drx.Children.Add(rm) drx.Children.Add(rm1) doc.Body.Children.Add(drx) Doc.Preview()
|
-- 作者:大红袍
-- 发布时间:2015/9/7 19:20:00
--
Dim Chart As New ChartBuilder Dim Series As WinForm.ChartSeries \'定义一个图系变量 Dim t As Table = Tables("成本核算") \'定义一个变量t引用数据表 Chart.ChartType = ChartTypeEnum.Bar \'图表类型改为Bar(条形) Chart.DataSource = "成本核算" \'设置绑定表 Chart.SeriesList.Clear() \'清除图表原来的图系 Chart.AxisY.Min = 0 \'指定Y轴的最小值 \'Chart.AxisY.Max =15000 \'指定Y轴的最大值 Chart.PrintWidth = 140 \'宽度设为140毫米 Chart.PrintHeight = 100 \'高度设为100毫米 Series = Chart.SeriesList.Add() Series.Text = "标准成本_材料成本" \'设置图系的标题 Series.X.DataField = "年月" \'X轴绑定到产品列 Series.Y.DataField = "标准成本_材料成本" \'设置Y轴的绑定列 Series.DataLabelText = "{#YVAL}" Series = Chart.SeriesList.Add() Series.Text = "实际成本_材料成本" \'设置图系的标题 Series.X.DataField = "年月" \'X轴绑定到产品列 Series.Y.DataField = "实际成本_材料成本" \'设置Y轴的绑定列 Series.DataLabelText = "{#YVAL}" Chart.BarClusterWidth = 80 Chart.VisualEffect = True \'加上这一行,让你的图表更漂亮 Chart.LegendVisible = True \'显示图列 Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Dim Chart1 As New ChartBuilder Dim Series1 As WinForm.ChartSeries \'定义一个图系变量 Dim t1 As Table = Tables("成本核算") \'定义一个变量t引用数据表 Chart1.ChartType = ChartTypeEnum.Bar \'图表类型改为Bar(条形) Chart1.DataSource = "成本核算" \'设置绑定表 \'Chart1.SeriesList.Clear() \'清除图表原来的图系 Chart1.AxisY.Min = 0 \'指定Y轴的最小值 \'Chart.AxisY.Max =15000 \'指定Y轴的最大值 Chart1.PrintWidth = 140 \'宽度设为140毫米 Chart1.PrintHeight = 100 \'高度设为100毫米 Series1 = Chart1.SeriesList.Add() Series1.Text = "标准成本_间接费用" \'设置图系的标题 Series1.X.DataField = "年月" \'X轴绑定到产品列 Series1.Y.DataField = "标准成本_间接费用" \'设置Y轴的绑定列 Series1.DataLabelText = "{#YVAL}" Series1 = Chart1.SeriesList.Add() Series1.Text = "实际成本_间接费用" \'设置图系的标题 Series1.X.DataField = "年月" \'X轴绑定到产品列 Series1.Y.DataField = "实际成本_间接费用" \'设置Y轴的绑定列 Series1.DataLabelText = "{#YVAL}" Chart1.BarClusterWidth = 80 Chart1.VisualEffect = True \'加上这一行,让你的图表更漂亮 Chart1.LegendVisible = True \'显示图列 Chart1.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Dim doc As New PrintDoc Dim drx As new prt.RenderTable Dim rm As New prt.RenderImage Dim rm1 As New prt.RenderImage rm.Image = Chart.Image rm1.Image = Chart1.Image drx.Cells(0,0).RenderObject = rm drx.Cells(5,0).RenderObject = rm1 doc.Body.Children.Add(drx) Doc.Preview()
|