using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Hippo;
using Hippo.WindowsForm4;
using System.Diagnostics;
namespace StackedRealTest
{
public partial class Form1 : Form
{
PerformanceCounter p;
SeriesList slist;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// 타이머
this.timer1.Interval = 1000;
this.timer1.Start();
// 성능 카운터에서 CPU값을 받아오기 위한 설정사항
p = new PerformanceCounter();
p.CategoryName = "Processor";
p.CounterName = "% Processor Time";
p.InstanceName = "_Total";
slist = new SeriesList();
slist.SeriesCollection.Add(new Series());
slist.SeriesCollection[0].SeriesColor = Color.Lime;
// 히포차트 3.0 이상 버전 부터는 아래 코드를 삽입해야합니다.
// 시리즈의 개수만큼 똑같이 추가합니다.
this.hHippoChart1.RealTimeList.Add(new HippoRealTimeAttribute());
// 작업관리자처럼 디자인
slist.AxisFactor.YAxis.Line.LineColor = Color.DarkGreen;
slist.AxisFactor.XAxis.Line.LineColor = Color.DarkGreen;
slist.GraphArea.Grid.GridLine.LineColor = Color.Green;
slist.AxisFactor.YAxis.ForeColor = Color.Green;
slist.AxisFactor.XAxis.ForeColor = Color.Green;
slist.GraphArea.BackColor = Color.Black;
// 축 숫자와 눈금 없애기
slist.AxisFactor.YAxis.IsShowTick = false;
slist.AxisFactor.YAxis.IsVisibleFigures = false;
slist.AxisFactor.XAxis.IsShowTick = false;
slist.AxisFactor.XAxis.IsVisibleFigures = false;
// 축을 0 ~ 100%로 고정
slist.AxisFactor.YAxis.IsAutoSetting = false;
slist.AxisFactor.YAxis.MaxUnitValue = 100;
slist.AxisFactor.YAxis.MinUnitValue = 0;
slist.AxisFactor.YAxis.Interval = 10;
this.hHippoChart1.Designer.InnerBackColor = Color.Black;
this.hHippoChart1.LegendBox.Visible = false;
this.hHippoChart1.DesignType = ChartDesignType.None;
this.hHippoChart1.SeriesListDictionary.Add(slist);
}
private void timer1_Tick(object sender, EventArgs e)
{
float thisCpuvalue = p.NextValue();
this.hHippoChart1.DrawRealTimeChart(thisCpuvalue, 50);
}
}
}
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Text
Imports System.Windows.Forms
Imports Hippo
Imports Hippo.WindowsForm4
Imports System.Diagnostics
Namespace StackedRealTest
Public Partial Class Form1
Inherits Form
Private p As PerformanceCounter
Private slist As SeriesList
Public Sub New()
InitializeComponent()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs)
` 타이머
Me.timer1.Interval = 1000
Me.timer1.Start()
` 성능 카운터에서 CPU값을 받아오기 위한 설정사항
p = New PerformanceCounter()
p.CategoryName = "Processor"
p.CounterName = "% Processor Time"
p.InstanceName = "_Total"
slist = New SeriesList()
slist.SeriesCollection.Add(New Series())
slist.SeriesCollection(0).SeriesColor = Color.Lime
` 히포차트 3.0 이상 버전 부터는 아래 코드를 삽입해야합니다.
` 시리즈의 개수만큼 똑같이 추가합니다.
Me.hHippoChart1.RealTimeList.Add(New HippoRealTimeAttribute())
` 작업관리자처럼 디자인
slist.AxisFactor.YAxis.Line.LineColor = Color.DarkGreen
slist.AxisFactor.XAxis.Line.LineColor = Color.DarkGreen
slist.GraphArea.Grid.GridLine.LineColor = Color.Green
slist.AxisFactor.YAxis.ForeColor = Color.Green
slist.AxisFactor.XAxis.ForeColor = Color.Green
slist.GraphArea.BackColor = Color.Black
` 축 숫자와 눈금 없애기
slist.AxisFactor.YAxis.IsShowTick = False
slist.AxisFactor.YAxis.IsVisibleFigures = False
slist.AxisFactor.XAxis.IsShowTick = False
slist.AxisFactor.XAxis.IsVisibleFigures = False
` 축을 0 ~ 100%로 고정
slist.AxisFactor.YAxis.IsAutoSetting = False
slist.AxisFactor.YAxis.MaxUnitValue = 100
slist.AxisFactor.YAxis.MinUnitValue = 0
slist.AxisFactor.YAxis.Interval = 10
Me.hHippoChart1.Designer.InnerBackColor = Color.Black
Me.hHippoChart1.LegendBox.Visible = False
Me.hHippoChart1.DesignType = ChartDesignType.None
Me.hHippoChart1.SeriesListDictionary.Add(slist)
End Sub
Private Sub timer1_Tick(sender As Object, e As EventArgs)
Dim thisCpuvalue As Single = p.NextValue()
Me.hHippoChart1.DrawRealTimeChart(thisCpuvalue, 50)
End Sub
End Class
End Namespace