📄 datashowchild.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "DataShowChild.h"
#include "CommFun.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormDataShowChild *FormDataShowChild;
//---------------------------------------------------------------------------
__fastcall TFormDataShowChild::TFormDataShowChild(TComponent* Owner,char ctype)
: TForm(Owner)
{
type=ctype;
switch( ctype )
{
case 'U':
Caption="上部温度曲线";
break;
case 'D':
Caption="下部温度曲线";
break;
case 'A':
Caption="平均温度曲线";
break;
case 'P':
Caption="压力曲线";
break;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormDataShowChild::FormCreate(TObject *Sender)
{
WindowProc=MyWndProc;
}
//---------------------------------------------------------------------------
void __fastcall TFormDataShowChild::FormClose(TObject *Sender,
TCloseAction &Action)
{
Action=caFree;
}
//---------------------------------------------------------------------------
void __fastcall TFormDataShowChild::InitCanvas(char ctype,TCanvas *Canvas,
short & DevWidth,short & DevHeight)
{
switch (ctype)
{
case 'U':
Canvas->Pen->Color=clRed;
if (x1>=DevWidth ) x1=0;
if (y1>=DevHeight) y1=0;
break;
case 'D':
Canvas->Pen->Color=clGreen;
if (x2>=DevWidth ) x2=0;
if (y2>=DevHeight) y2=0;
break;
case 'A':
Canvas->Pen->Color=clBlue;
if (x3>=DevWidth ) x3=0;
if (y3>=DevHeight) y3=0;
break;
case 'P':
Canvas->Pen->Color=clBlack;
if (x4>=DevWidth ) x4=0;
if (y4>=DevHeight) y4=0;
break;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormDataShowChild::DrawCanvas(char ctype,TCanvas * Canvas,
bool printer)
{
switch (ctype)
{
case 'U':
Canvas->MoveTo(x1,y1);
Canvas->LineTo(x1+5,y1+5);
break;
case 'D':
Canvas->MoveTo(x2,y2);
Canvas->LineTo(x2+5,y2+5);
break;
case 'A':
Canvas->MoveTo(x3,y3);
Canvas->LineTo(x3+5,y3+5);
break;
case 'P':
Canvas->MoveTo(x4,y4);
Canvas->LineTo(x4+5,y4+5);
break;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormDataShowChild::MyWndProc(Messages::TMessage &Message)
{
if (Message.Msg == WM_USER+10)
{
InitCanvas(type,Image->Canvas,ClientWidth,ClientHeight);
DrawCanvas(type,Image->Canvas,false);
}
WndProc(Message);
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -