Foxtable(狐表)用户栏目专家坐堂 → 有点复杂的计算过程如何实现


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

主题:有点复杂的计算过程如何实现

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/10 19:47:00 [显示全部帖子]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:eventcode.zip


 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/10 20:39:00 [显示全部帖子]

 改了一下列名

 

 


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

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/10 20:54:00 [显示全部帖子]

 你还要输入 性别、年龄 才能计算的。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/10 21:44:00 [显示全部帖子]

先看懂代码,如果要加重量的条件,在原来的条件加上即可。

 

生成图表,参考 http://www.foxtable.com/webhelp/scr/0972.htm

 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 1:56:00 [显示全部帖子]

计算的时候,直接修改计算的代码

 

http://www.foxtable.com/webhelp/scr/0361.htm

 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 20:09:00 [显示全部帖子]

Dim rn1 As Integer = val(e.Form.Controls("TextBox11").text)
Dim rn2 As Integer = val(e.Form.Controls("TextBox21").text)
Dim rn3 As Integer = val(e.Form.Controls("TextBox31").text)
Dim rn4 As Integer = val(e.Form.Controls("TextBox41").text)
Dim sj1 As Integer = val(e.Form.Controls("TextBox12").text)
Dim sj2 As Integer = val(e.Form.Controls("TextBox22").text)
Dim sj3 As Integer = val(e.Form.Controls("TextBox32").text)
Dim sj4 As Integer = val(e.Form.Controls("TextBox42").text)
Dim t As Table = Tables("作图用临时表")
t.DataTable.DataRows.Clear
Dim nr1 As Row = t.AddNew
nr1("项目") = "有氧运动"
nr1("总热能") = rn1
nr1("总时间") = sj1
Dim nr2 As Row = t.AddNew
nr2("项目") = "力量运动"
nr2("总热能") = rn2
nr2("总时间") = sj2
Dim nr3 As Row = t.AddNew
nr3("项目") = "柔韧运动"
nr3("总热能") = rn3
nr3("总时间") = sj3
Dim nr4 As Row = t.AddNew
nr4("项目") = "日常活动"
nr4("总热能") = rn4
nr4("总时间") = sj4

 

 

 没必要写入表的,你不是可以直接给图表赋值?这样就不需要表这一步。


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 20:34:00 [显示全部帖子]

参考代码

 

Dim rn1 As Double = val(e.Form.Controls("TextBox11").text)
Dim rn2 As Double = val(e.Form.Controls("TextBox21").text)
Dim rn3 As Double = val(e.Form.Controls("TextBox31").text)
Dim rn4 As Double = val(e.Form.Controls("TextBox41").text)


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= Forms("主窗体").Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear
Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.Pie '图表1类型改为Bar(条形)

Series = Chart.SeriesList.Add() '增加一个图系
Series.Length = 1 '一个系列只能包括一个值
Series.Text = "11111"
Series.Y(0) = rn1
Series = Chart.SeriesList.Add() '增加一个图系
Series.Length = 1 '一个系列只能包括一个值
Series.Text = "22222"
Series.Y(0) = rn2
Series = Chart.SeriesList.Add() '增加一个图系
Series.Length = 1 '一个系列只能包括一个值
Series.Y(0) = rn3
Series.Text = "3333"
Series = Chart.SeriesList.Add() '增加一个图系
Series.Length = 1 '一个系列只能包括一个值
Series.Y(0) = rn4
Series.Text = "4444"

Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.East '图列显示在东方(右方)


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 22:44:00 [显示全部帖子]

Dim rn1 As Double = val(e.Form.Controls("TextBox11").text)
Dim rn2 As Double = val(e.Form.Controls("TextBox21").text)
Dim rn3 As Double = val(e.Form.Controls("TextBox31").text)
Dim rn4 As Double = val(e.Form.Controls("TextBox41").text)


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= Forms("主窗体").Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear
Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.Pie '图表1类型改为Bar(条形)

Dim sum As Double =rn1 + rn2 + rn3 + rn4
Dim ary() As Double = {rn1, rn2, rn3, rn4}
Dim cs() As String = {"有氧运动","力量运动","柔韧运动","日常活动"}
For i As Integer = 0 To cs.length-1
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Length = 1 '一个系列只能包括一个值
    Series.DataLabelText = cs(i) & "(" & Format(ary(i)/sum, "0.00%") & ")"
   
    Series.Y(0) = ary(i) '指定值
Next


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/11 23:39:00 [显示全部帖子]

 你把窗口另存一下,新建一个项目,把窗口导入,然后发布,看看效果。

 回到顶部