|
TChart Pro를 사용하고 있기 때문에 컴파일은 안되실 걸로 생각하고
프로젝트 파일은 올리지 않겠습니다.
//헤더파일-------------------------------------------------------------------
//---------------------------------------------------------------------------
#ifndef ChartUnitH
#define ChartUnitH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Chart.hpp>
#include <ExtCtrls.hpp>
#include <Series.hpp>
#include <TeEngine.hpp>
#include <TeeProcs.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TChart *Chart1;
TLineSeries *Series1;
TLineSeries *Series2;
TTimer *Timer1;
TButton *Button1;
TButton *Button2;
void __fastcall Timer1Timer(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
void __fastcall FormDestroy(TObject *Sender);
private: // User declarations
double *dptrThickness;
double *dptrBThickness;
int iSize, iBSize;
int iCount, iBCount;
bool bDir;
public: // User declarations
__fastcall TForm1(TComponent* Owner);
void __fastcall DrawChart(void);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
//소스파일-------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "ChartUnit.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
randomize();
dptrThickness = NULL;
dptrBThickness = NULL;
iSize = 100;
iBSize = 100;
iCount = 0;
iBCount = 0;
bDir = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
if(dptrThickness != NULL)
{
delete [] dptrThickness;
dptrThickness = NULL;
}
if(dptrBThickness != NULL)
{
delete [] dptrBThickness;
dptrBThickness = NULL;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DrawChart(void)
{
dptrThickness[iCount] = rand() % 7 +50;
dptrBThickness[iBCount] = rand() % 7 +50;
if(iCount < iSize && !bDir)
{
Series1->AddXY(iCount, dptrThickness[iCount], "", clRed);
iCount++;
}
else
{
Series1->Clear();
iCount = 0;
bDir = true;
}
if(iBCount < iBSize && bDir)
{
Series2->AddXY(iBSize-iBCount, dptrBThickness[iBCount], "", clBlue);
iBCount++;
}
else
{
Series2->Clear();
iBCount = 0;
bDir = false;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
DrawChart();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(dptrThickness != NULL)
{
delete [] dptrThickness;
dptrThickness = NULL;
}
dptrThickness = new double[iSize+1];
if(dptrBThickness != NULL)
{
delete [] dptrBThickness;
dptrBThickness = NULL;
}
dptrBThickness = new double[iBSize+1];
Series1->Clear();
Series2->Clear();
Timer1->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Timer1->Enabled = false;
}
//---------------------------------------------------------------------------
|