全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C#实现动态数据绘图graphic的方法示例

本文实例讲述了C#实现动态数据绘图graphic的方法。分享给大家供大家参考,具体如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
namespace Drawing
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
    private int WidthAdded = 0;
    private int HeightAdded = 0;
    private int Added_Value = 15;
    private int Incremented = 3;
    private double Width_Max = 0.0f;
    private double Height_Max = 0f;
    private string hstrlink;
    private string vstrlink;
    private const int hor_kedu=17;
    private const int ver_kedu = 13;
    private double HelpRdm = 0;
    private void Form1_Load(object sender, EventArgs e)
    {
      Width_Max=Convert.ToDouble(panel.ClientSize.Width);
      Height_Max = Convert.ToDouble(panel.ClientSize.Height);
      BtnStatusInfoForb();
    }
    private void button1_Click(object sender, EventArgs e)
    {
      Graphics myGraphics_framwork;
      Pen myPen = new Pen(Color.Blue, 0.25f);
      myGraphics_framwork = panel.CreateGraphics();
      for (int Increment = 0; Increment < panel.Height; Increment += Incremented)
      {
        myGraphics_framwork.DrawLine(myPen, 0, HeightAdded, panel.ClientSize.Width, HeightAdded);
        HeightAdded = HeightAdded + Added_Value;
      }
      for (int Increment = 0; Increment < panel.Height; Increment += Incremented)
      {
        myGraphics_framwork.DrawLine(myPen, WidthAdded, 0, WidthAdded, panel.ClientSize.Height);
        WidthAdded = WidthAdded + Added_Value;
      }
      myGraphics_framwork.Dispose();
      for (int hstart = 0; hstart < Width_Max; hstart += hor_kedu)
      {
        hstrlink = hstrlink + hstart.ToString() + "-";
      }
      label2.Text = hstrlink;
      for (int start = (int)Height_Max; start > 0; start -= ver_kedu)
      {
        vstrlink = vstrlink + start.ToString() + "-" + "\n";
      }
      label3.Text = vstrlink + "0-";
      BtnStatusInfoActi();
      button1.Enabled = false;
    }
    private void BtnStatusInfoForb()
    {
      button2.Enabled = false;
      button3.Enabled = false;
      button4.Enabled = false;
      trackBar1.Enabled = false;
      Rec_NumBox.Enabled = false;
    }
    private void BtnStatusInfoActi()
    {
      button2.Enabled = true;
      button3.Enabled = true;
      button4.Enabled = true;
      trackBar1.Enabled = true;
      Rec_NumBox.Enabled = true;
    }
    private void myfun()
    {
      Graphics myGraphics = panel.CreateGraphics();
      Font myFont = new Font("Times New Roman", 72, FontStyle.Italic);
      Point startPoint = new Point(0, 0);
      Point endPoint = new Point(30, 30);
      LinearGradientBrush myBrush = new LinearGradientBrush(startPoint, endPoint, Color.Black, Color.Yellow);
      myBrush.WrapMode = WrapMode.TileFlipXY;
      myGraphics.DrawString("String", myFont, myBrush, 0, 0);
    }
    private void button2_Click(object sender, EventArgs e)
    {
      if (ParaBox1.Text == null)
      {
        MessageBox.Show("请输入矩形的高度");
      }
      else
      {
        try
        {
          Graphics myGraphics_Rectangle = panel.CreateGraphics();
          Pen myPen_Rec = new Pen(Color.Red, 3);
          Rectangle rect = new Rectangle();
          rect.X = 20; rect.Y = panel.ClientSize.Height - Convert.ToInt32(ParaBox1.Text);
          rect.Width = 20; rect.Height = panel.ClientSize.Height;
          myGraphics_Rectangle = panel.CreateGraphics();
          myGraphics_Rectangle.DrawRectangle(myPen_Rec, rect);
          SolidBrush MyRectBrush = new SolidBrush(Color.Purple);
          myGraphics_Rectangle.FillRectangle(MyRectBrush, rect);
          myGraphics_Rectangle.Dispose();
        }
        catch (Exception Excp)
        {
          MessageBox.Show(Excp.Message);
        }
      }
    }
    /// <summary>
    ///
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button3_Click(object sender, EventArgs e)
    {
      Graphics myGraphics_Rectangle = panel.CreateGraphics();
      if (Rec_NumBox == null)
      {
        MessageBox.Show("请输入你要绘制的矩形数量");
      }
      else
      {
        double count = Convert.ToInt32(Rec_NumBox.Text);
        double TableSpace = (1 * Width_Max) / (4 * count);
        double TableWidth = (3 * Width_Max) / (4 * count);
        double RecOffset = TableWidth + TableSpace;//
        Pen myPen_Rec = new Pen(Color.Red, 3);
        for (long RectNum = 0; RectNum < count; RectNum++)
        {
          Random Radom = new Random();
          System.Threading.Thread.Sleep(20);
          double RandomHegiht =Radom.Next(0, Convert.ToInt32(Height_Max));
          Rectangle rect = new Rectangle();
          rect.X =Convert.ToInt32(RectNum*RecOffset);
          rect.Y = Convert.ToInt32(panel.ClientSize.Height - RandomHegiht);
          rect.Width = Convert.ToInt32(TableWidth);
          rect.Height = panel.ClientSize.Height;
          myGraphics_Rectangle = panel.CreateGraphics();
          myGraphics_Rectangle.DrawRectangle(myPen_Rec, rect);
          SolidBrush MyRectBrush = new SolidBrush(Color.Green);
          myGraphics_Rectangle.FillRectangle(MyRectBrush, rect);
        }
      myGraphics_Rectangle.Dispose();
      }
      Rec_NumBox.Text = Added_Value.ToString();
      Added_Value = Added_Value+50;
    }
    private void button4_Click(object sender, EventArgs e)
    {
      StringFormat sf=new StringFormat();
      sf.Alignment = StringAlignment.Near;
      Graphics myGraphics = panel.CreateGraphics();
      RectangleF REf = new RectangleF(12, 30, 8, 38);
      Font myFont = new Font("Times New Roman", 62, FontStyle.Italic);
      Point startPoint = new Point(0, 0);
      Point endPoint = new Point(30, 30);
      LinearGradientBrush myBrush = new LinearGradientBrush(startPoint, endPoint, Color.Green, Color.Blue);
      SolidBrush MyRectBrush = new SolidBrush(Color.Purple);
      myBrush.WrapMode = WrapMode.TileFlipXY;
      myGraphics.DrawString("b2spirit", myFont, myBrush, 0, 0);
      Random r=new Random();
      int temp=r.Next(10,300);
      myGraphics.DrawString(temp.ToString(), myFont, MyRectBrush, REf, sf);
    }
    private void trackBar1_Scroll(object sender, EventArgs e)
    {
      TrackBar myTB=new TrackBar();
      myTB=(TrackBar)sender;
      Rec_NumBox.Text = myTB.Value.ToString();
    }
  }
}

截图

更多关于C#相关内容感兴趣的读者可查看本站专题:《C#图片操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》

希望本文所述对大家C#程序设计有所帮助。


# C#  # 动态数据  # 绘图  # graphic  # C#实现Windows Form调用R进行绘图与显示的方法  # C#打印绘图的实现方法  # C# GDI在控件上绘图的方法  # 混合语言编程—C#使用原生的Directx和OpenGL绘图的方法  # 深入c# GDI+简单绘图的具体操作步骤(四)  # 深入c# GDI+简单绘图的具体操作步骤(三)  # 深入c# GDI+简单绘图的具体操作步骤(二)  # 深入c# GDI+简单绘图的具体操作步骤(一)  # C#中GraphicsPath的AddString方法用法实例  # C#中GraphicsPath的Warp方法用法实例  # C#中GraphicsPath的Widen方法用法实例  # C#中GraphicsPath的Flatten方法用法实例  # 程序设计  # 请输入  # 相关内容  # 你要  # 感兴趣  # 数据结构  # 给大家  # 更多关于  # 所述  # 使用技巧  # 面向对象  # 操作技巧  # 讲述了  # Width  # Height  # ClientSize  # ToDouble  # panel  # myGraphics_framwork  # Pen 


相关文章: 如何选择高效可靠的多用户建站源码资源?  建站之星安装路径如何正确选择及配置?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  如何快速完成中国万网建站详细流程?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  如何选择PHP开源工具快速搭建网站?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  中山网站制作网页,中山新生登记系统登记流程?  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  如何在IIS中新建站点并配置端口与IP地址?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  大型企业网站制作流程,做网站需要注册公司吗?  英语简历制作免费网站推荐,如何将简历翻译成英文?  代购小票制作网站有哪些,购物小票的简要说明?  代刷网站制作软件,别人代刷火车票靠谱吗?  网站制作报价单模板图片,小松挖机官方网站报价?  建站主机是否属于云主机类型?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  建站之星2.7模板快速切换与批量管理功能操作指南  建站之星安装模板失败:服务器环境不兼容?  建站之星安装步骤有哪些常见问题?  如何快速配置高效服务器建站软件?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  韩国服务器如何优化跨境访问实现高效连接?  无锡营销型网站制作公司,无锡网选车牌流程?  上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?  建站之星如何一键生成手机站?  如何破解联通资金短缺导致的基站建设难题?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  如何快速使用云服务器搭建个人网站?  如何快速搭建支持数据库操作的智能建站平台?  太平洋网站制作公司,网络用语太平洋是什么意思?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析  相册网站制作软件,图片上的网址怎么复制?  建站之星logo尺寸如何设置最合适?  建站之星在线版空间:自助建站+智能模板一键生成方案  怎么将XML数据可视化 D3.js加载XML  内部网站制作流程,如何建立公司内部网站?  如何快速辨别茅台真假?关键步骤解析  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  建站与域名管理如何高效结合?  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何在景安服务器上快速搭建个人网站?  如何挑选优质建站一级代理提升网站排名?  广东企业建站网站优化与SEO营销核心策略指南  行程制作网站有哪些,第三方机票电子行程单怎么开? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。