C#利用控件实现柱形图分析

数据

{
using (SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=;database=db_TomeOne")) //实例化一个SqlConnection对象
{
int XValse = 20;
DataSet ds = new DataSet(); //创建DataSet对象
//创建SqlCommand对象
SqlCommand cmd = new SqlCommand("select * from tb_Rectangle select Sum(t_Num) from tb_Rectangle", con);
SqlDataAdapter da = new SqlDataAdapter(); //创建SqlDataAdapter对象
da.SelectCommand = cmd;
da.Fill(ds); //Fill方法填充DataSet
Panel[] p = new Panel[ds.Tables[0].Rows.Count]; //实例化一个Panel数组
int Values = Convert.ToInt32(ds.Tables[1].Rows[0][0].ToString()); //商品总数
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
ds.Tables[0].Rows[i][0].ToString();
float f = Convert.ToInt32(ds.Tables[0].Rows[i][1].ToString()); //获取每个商品的数量
Size s = new Size(); //创建Size对象
s.Width = 30; //设置柱形图宽度
s.Height = Convert.ToInt32(f / Values * 200); //计算柱形图高度
Point pint = new Point(); //创建Point对象
pint.X = XValse; //x坐标
pint.Y = this.Height - 50 - s.Height; //y坐标
p[i] = new Panel(); //实例化一个Panel对象
p[i].Location = pint; //设置位置
p[i].BackColor = Color.Red; //设置背景颜色
p[i].Size = s; //设置大小
XValse += 40; //设置Xvalse变量的值
Label lbl = new Label(); //创建Label对象
lbl.Text = ds.Tables[0].Rows[i][0].ToString(); //设置Label显示的文本
lbl.Font = new Font("宋体", 9, FontStyle.Regular); //设置Label的Font属性
lbl.ForeColor = Color.White; //设置Label的ForeColor属性
p[i].Controls.Add(lbl); //添加控件
this.Controls.Add(p[i]); //将控件数组添加到当前容器中
}
}
}
C#利用控件实现柱形图分析的更多相关文章
- WPF中利用控件的DataContext属性为多个TextBox绑定数据
工作上需要从给定的接口获取数据,然后显示在界面的编辑框中,以往肯定会一个一个的去赋值,但这样太麻烦而且效率很低,不利于维护,于是想到了数据绑定这一方法,数据绑定主要利用INotifyPropertyC ...
- Android控件源码分析--AndroidResideMenu菜单
说明 早上看到一篇文章介绍了ResideMenu得使用,这是一个类似SlidingMenu的控件,感觉有点高尚大,反正我之前没见过,本着凑热闹的好奇心,立马clone把玩下,项目地址奉上: https ...
- 5、利用控件TVCLZip和TIdFTP压缩文件并上传到FTP的线程单元pas 改进版
用到临界区 保护写日志的函数: 递归函数 删除目录下的所有文件: 循环创建或判断FTP的目录: 可改进的地方:循环压缩深层次目录的所以文件: 实现断点续传,或断点下载: {************** ...
- 安全控件开发原理分析 支付宝安全控件开发 C++
浏览器安全控件是如果支付宝一样结合web程序密码数据安全处理的程序,采用C++语言开发 通常的安全控件分为两种,一种是指支持IE内核的浏览器,一种支持所有内核的浏览器,支付宝采用的是支持所有内核的浏览 ...
- C#利用控件mscomm32.ocx读取串口datalogic扫描枪数据
1).开发环境VS12,语言C# 2).扫描枪品牌:datalogic 4470 3).通讯协议:串口 1.首先,第一步创建一个新工程,windows窗体应用程序,命名为TestScanner,如下: ...
- Duilib源码分析(二)控件构造器—CDialogBuilder
上一节了解了大体流程,但是界面控件元素是如何被加载.解析.构建.管理.控件消息如何处理的呢?接下来我们将结合控件构造器进行分析: CDialogBuilder:控件构造器,主要用以解析xml配置文件并 ...
- [深入浅出Windows 10]实现饼图控件
13.2 实现饼图控件 上一小节讲解了动态生成折线图和区域图,对于简单的图形这样通过C#代码来生成的方式是很方便的,但是当我们的图表要实现更加复杂的逻辑的时候,这种动态生成的方式就显得力不从心了,那就 ...
- 文字处理控件TX Text Control的使用
这几天一直在研究TX Text Control的使用,由于这方面的资料相对比较少,主要靠下载版本的案例代码进行研究,以及官方的一些博客案例进行学习,使用总结了一些心得,特将其总结出来,供大家分享学习. ...
- 记录下UIButton的图文妙用和子控件的优先显示
UIButton的用处特别多,这里只记录下把按钮应用在图文显示的场景,和需要把图片作为按钮的背景图片显示场景: 另外记录下在父控件的子控件优先显示方法(控件置于最前面和置于最后面). 先上效果图: 1 ...
- 基于CkEditor实现.net在线开发之路(3)常用From表单控件介绍与说明
上一章已经简单介绍了CKEditor控件可以编写C#代码,然后可以通过ajax去调用,但是要在网页上面编写所有C#后台逻辑,肯定痛苦死了,不说实现复杂的逻辑,就算实现一个简单增删改查,都会让人头痛欲裂 ...
随机推荐
- Kubernetes: client-go 源码剖析(一)
0. 前言 在看 kube-scheduler 组件的过程中遇到了 kube-scheduler 对于 client-go 的调用,泛泛的理解调用过程总有种隔靴搔痒的感觉,于是调转头先把 client ...
- SpringBoot 异步编程浅谈
1. 需求背景 当我们需要提高系统的并发性能时,我们可以将耗时的操作异步执行,从而避免线程阻塞,提高系统的并发性能.例如,在处理大量的并发请求时,如果每个请求都是同步阻塞的方式处 理,系统的响应时间会 ...
- 解析$nextTick魔力,为啥大家都爱它?
1.为什么需要使用$nextTick? 首先我们来看看官方对于$nextTick的定义: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 由于vu ...
- tarjan无向图割点与割边板子
\(\Huge{割点}\) \(无向图割点判定法则\) 当遍历到一个点x时,这个点为割点的情况有两种: 第一种是该节点为根节点且子节点数>=2,必导致两个子节点不连通: 第二种是该节点不为根节点 ...
- 华企盾DSC导致svn、git更新卡、慢常见处理方法
1.svn客户端加密所有网络导致(应勾选其它范围IP不加密,同时在加密地址框里填写加密的端口如:80,443) 2.加密类型太多导致,先试试加密nofile 3.启用文件夹大小缓存导致,去掉该选项试试 ...
- 【Python】【OpenCV】凸轮廓和Douglas-Peucker算法
针对遇到的各种复杂形状的主体,大多情况下,我们可以求得一个近似的多边形来简化视觉图像处理,因为多边形是由直线组成的,这样就可以准确的划分区域来便捷后续的操作. cv2.arcLength() Meth ...
- loader编写小记
此项目在一些大佬的基础上进行了修改,或许能提供一些思路.还在学习中很菜很菜,不足之处还请师傅们多多指点 tips 对shellcode使用AES + Base85加密后以txt保存在远端供下载. 针对 ...
- 分布式机器学习的故事:Docker改变世界
分布式机器学习的故事:Docker改变世界 Docker最近很火.Docker实现了"集装箱"--一种介于"软件包"和"虚拟机"之间的概念- ...
- flutter弹窗
AlertDialog: 优点:Material风格的弹窗,具有灵活的布局和样式自定义能力.易于使用,并提供了标题.内容和操作按钮的选项. 缺点:对于复杂的自定义布局和样式可能不够灵活. Bottom ...
- APP搜索如何又快又准?
摘要:搜索的概念深入人心,但做好一个体验绝佳的搜索服务并不是一件容易的事. 本文分享自华为云社区<云搜索服务在APP搜索场景的应用>,作者:写代码的贺大师 搜索无处不在,尤其是在移动互联的 ...