📄 cd6_4u.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "cd6_4u.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int pgi;
int sort[8]={0};
int sor[8]={0};
int idx=0;
int r;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void gf(int n) //运行中产生Image,并绘制所需线段
{
TImage *img1;
img1=new TImage(Form1);
img1->Transparent=true;
img1->Width=360;
switch(n) //以n来传达执行步骤的对应数值
{
case 0:img1->Parent=Form1->pn1; //合并排序第1阶段面板的线条绘制
for(int g=0;g<4;g++)
{
img1->Canvas->MoveTo(40+80*g,41); //连接各点
img1->Canvas->LineTo(40+80*g,54);
img1->Canvas->LineTo(80+80*g,54);
img1->Canvas->LineTo(80+80*g,40);
img1->Canvas->MoveTo(60+80*g,54);
img1->Canvas->LineTo(60+80*g,72);
}
break;
case 1:img1->Parent=Form1->pn2; //合并排序第2阶段面板的线条绘制
for(int g=0;g<2;g++)
{
img1->Canvas->MoveTo(60+160*g,41);
img1->Canvas->LineTo(60+160*g,54);
img1->Canvas->LineTo(140+160*g,54);
img1->Canvas->LineTo(140+160*g,40);
img1->Canvas->MoveTo(100+160*g,54);
img1->Canvas->LineTo(100+160*g,72);
}
break;
case 2:img1->Parent=Form1->pn3; //合并排序第3阶段面板的线条绘制
img1->Canvas->MoveTo(96,41);
img1->Canvas->LineTo(96,54);
img1->Canvas->LineTo(264,54);
img1->Canvas->LineTo(264,40);
img1->Canvas->MoveTo(180,54);
img1->Canvas->LineTo(180,72);
break;
}
}
void __fastcall TForm1::nextClick(TObject *Sender) //执行下一步动作
{
switch(pgi)
{
case 0:pc->ActivePageIndex=1; //PageControl控件换页设置
rpt->Visible=true; //显示重新开始按键
back->Visible=true; //显示上一部按键
gf(0); //调用构造线段函数
break;
case 1:pc->ActivePageIndex=2;
gf(1);
break;
case 2:pc->ActivePageIndex=3;
gf(2);
break;
case 3:pc->ActivePageIndex=4;
next->Caption="完 成";
break;
case 4:Close();
break;
}
pgi++;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::backClick(TObject *Sender) //执行上一步动作
{
switch(pgi)
{
case 1:pc->ActivePageIndex=0; //PageControl控件换页设定
back->Visible=false;
break;
case 2:pc->ActivePageIndex=1;
break;
case 3:pc->ActivePageIndex=2;
break;
case 4:pc->ActivePageIndex=3;
next->Caption="
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -