C\#동적 데이터 그래 픽 을 실현 하 는 방법 예시

본 논문 의 사례 는 C\#동적 데이터 그래 픽 을 실현 하 는 방법 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.

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() + "-" + "
"; } 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\#프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기