欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實現繪制面形圖表的方法詳解

 更新時間:2014年07月30日 14:57:49   投稿:shichen2014  
這篇文章主要介紹了C#實現繪制面形圖表的方法,對于C#初學者很好的掌握C#圖形繪制有一定的借鑒價值,需要的朋友可以參考下

本例詳細講述了C#實現的面形圖繪制例子,這是其中一個核心繪制文件的代碼,代碼中的里面的注釋很多,也比較詳細,相信對于初學者學習及理解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.IO;
namespace 繪制面形圖
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
    Graphics g;//創(chuàng)建Graphics對象
    private void button1_Click(object sender, EventArgs e)
    {
      Bitmap bt = new Bitmap(panel1.Width, panel1.Height);//實例化一個Bitmap對象
      int flag = (panel1.Width-4 )/ 6;//X軸的增值
      g = Graphics.FromImage(bt);//實例化Graphics對象
      Pen p = new Pen(Color.Black, 1);//設置Pen對象
      g.DrawLine(p, new Point(0, 0), new Point(0, panel1.Height-20));//繪制Y軸
      g.DrawLine(p, new Point(0, panel1.Height - 20), new Point(panel1.Width - 4, panel1.Height - 20));//繪制X軸
      //聲明一個用于繪制顏色的數組
      Color[] cl = new Color[] { Color.Red, Color.Blue, Color.YellowGreen, Color.Yellow, Color.RoyalBlue, Color.Violet, Color .Tomato};
      int[] points = { 20,70,80,60,40,100,10};//聲明一個計算走勢峰值的數組
      Point pt1 = new Point(0, panel1.Height - 20 - points[0]);//記錄繪制四邊形的第一個點
      Point pt2 = new Point(0, panel1.Height - 20);//記錄繪制四邊形的第二個點
      for (int i = 0; i <= 6; i++)//通過for循環(huán)繪制月份和面形圖
      {
        PointF p1 = new PointF(flag * i, panel1.Height - 20);//計算每個月份數字的坐標
        //繪制顯示月份的數字
        g.DrawString(i.ToString(), new Font("宋體", 9), new SolidBrush(Color.Black), new PointF(p1.X - 2, p1.Y));
        //記錄繪制四邊形的第三個點
        Point pt3 = new Point(flag * i, panel1.Height - 20);
        //記錄繪制四邊形的第四個點
        Point pt4 = new Point(flag * i, panel1.Height - 20 - points[i]);
        Point[] pt={pt1,pt2,pt3,pt4};//聲明一個Point數組
        g.FillPolygon(new SolidBrush(cl[i]), pt);//填充四邊形的顏色
        //當繼續(xù)繪制下一個四邊形時,前一個四邊形的最后兩個點作為下一個四邊形的起始點
        pt1 = pt4;
        pt2 = pt3;
      }
      panel1.BackgroundImage = bt;//顯示繪制的面形圖
    }

    private void Form1_Load(object sender, EventArgs e)
    {

    }
  }
}

面形圖是平時很普及的一種圖表風格,用來顯示數據挺方便的。合理的加以應用相信會對程序數據展現的視覺效果有很大的提高!

相關文章

  • 輕松學習C#的基礎入門

    輕松學習C#的基礎入門

    輕松學習C#的基礎入門,了解C#最基本的知識點,C#是一種簡潔的,類型安全的一種完全面向對象的開發(fā)語言,是Microsoft專門基于.NET Framework平臺開發(fā)的而量身定做的高級程序設計語言,需要的朋友可以參考下
    2015-11-11
  • C#實現Windows服務安裝卸載開啟停止

    C#實現Windows服務安裝卸載開啟停止

    本文主要介紹了C#實現Windows服務安裝卸載開啟停止,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • WPF應用啟動慢的問題解決

    WPF應用啟動慢的問題解決

    今天碰到一個奇怪的現象,在某些機器上,進行了系統(tǒng)還原后,WPF應用打開較慢,約有35s。本文先記錄下該問題的解決方案,應用啟動性能官方文檔中有說明,還有搜到的其它方案沒來得及測試,如NGEN update
    2021-05-05
  • c#異步發(fā)送郵件的類

    c#異步發(fā)送郵件的類

    這篇文章主要介紹了使用c#異步發(fā)送郵件的類,大家參考使用吧
    2014-01-01
  • c# 如何用lock解決緩存擊穿

    c# 如何用lock解決緩存擊穿

    這篇文章主要介紹了c# 如何用lock解決緩存擊穿,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C# WinForm制作一個批量轉化文件格式的小工具

    C# WinForm制作一個批量轉化文件格式的小工具

    在生活中有時候會遇到批量轉換格式的需求,一個個點太麻煩了,一個能夠實現批量文件格式轉換的工具非常有用,所以本文小編使用C# WinForm制作一個批量轉化文件格式的小工具,文中有具體實現代碼,需要的朋友可以參考下
    2023-11-11
  • C#使用Socket發(fā)送和接收TCP數據實例

    C#使用Socket發(fā)送和接收TCP數據實例

    這篇文章主要介紹了C#使用Socket發(fā)送和接收TCP數據的實現方法,以實例的形式詳細講述了C#實現socket通信的完整實現過程,非常具有實用價值,需要的朋友可以參考下
    2014-10-10
  • C#使用Twain協(xié)議實現掃描儀連續(xù)掃描功能

    C#使用Twain協(xié)議實現掃描儀連續(xù)掃描功能

    這篇文章主要介紹了C#使用Twain協(xié)議實現掃描儀連續(xù)掃描,只需一行代碼,就可實現一次掃描多張,且不需要更改掃描儀的任何設置,需要的朋友可以參考下
    2022-01-01
  • C#遞歸方法實現無限級分類顯示效果實例

    C#遞歸方法實現無限級分類顯示效果實例

    這篇文章主要介紹了C#遞歸方法實現無限級分類顯示效果,結合完整實例形式分析了C#遞歸算法與數據元素遍歷的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • C#編程實現統(tǒng)計文件夾內文件和隱藏文件的方法示例

    C#編程實現統(tǒng)計文件夾內文件和隱藏文件的方法示例

    這篇文章主要介紹了C#編程實現統(tǒng)計文件夾內文件和隱藏文件的方法,結合具體實例形式分析了C#針對文件與目錄的遍歷及屬性操作相關技巧,需要的朋友可以參考下
    2017-07-07

最新評論