⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 endgamedlog.cpp

📁 《C++Builder程序设计范例--中国象棋》配书盘自述文件
💻 CPP
字号:
//---------------------------------------------------------------------
#include <vcl.h>  
#pragma hdrstop

#include "EndGameDlog.h"
#include "MainForm1.h"

//---------------------------------------------------------------------
TEndChessGameDlg *EndChessGameDlg;
//---------------------------------------------------------------------
/*
为了动态地创建窗体必须使用双变量构造函数,这样才能安全地忽略警告。
双变量构造函数存在的唯一原因是构造动态窗体。
双变量构造函数创建与DFM文件无关的窗体。
因为动态窗体不使用DFM文件,因此必须构造控件和分配事件句柄并在运行
期间为TEndChessGameDlg设置参数特性。
必须为动态创建的控件设置Top和Left参数。否则,控件将出现在窗体的角上。
同时,也应该为其它起重要作为的控件设置参数。
如果忘记设置原始参数。动态创建的控件将不会出现。
分配YesBtnClick给控件的事件句柄。当用户揿击YesBtn时YesBtnClick将执行。
分配NoBtnClick给控件的事件句柄。当用户揿击NoBtn时NoBtnClick将执行。
*/
__fastcall TEndChessGameDlg::TEndChessGameDlg(TComponent* AOwner,
  AnsiString EndGameString): TForm(AOwner,NULL)
{
  Left = 65;
  Top = 539;
  BorderStyle = bsDialog;
  Caption = "中国象棋";
  ClientHeight = 183;
  ClientWidth = 292;
  Color = clBtnFace;
  ParentFont = True ;
  OldCreateOrder = True;
  Position = poScreenCenter;
  PixelsPerInch = 96;

  TBevel *Bevel1 =new TBevel(this);
   Bevel1->Parent =this;
   Bevel1->Height= 1;
   Bevel1->Width = 292;
   Bevel1->Left = 0 ;
   Bevel1->Top = 120;

 TPanel *Panel1 = new TPanel(this);
  Panel1->Parent =this;
  Panel1->Left = 48;
  Panel1->Top = 24;
  Panel1->Width = 185 ;
  Panel1->Height = 81;
  Panel1->BevelOuter = bvLowered;
  Panel1->Color = clGrayText;
  Panel1->TabOrder = 1 ;

 TLabel *Label1 = new TLabel(this);
  Label1->Parent =Panel1;  //保证Panel1在底层,Label1在顶层
  Label1->AutoSize= true;
  Label1->Alignment=taCenter;
  Label1->Color = clGrayText;
  Label1->Font->Charset = DEFAULT_CHARSET;
  Label1->Font->Color = clWindowText;
  Label1->Font->Height = -17 ;
  Label1->ParentColor = False;
  Label1->ParentFont = False ;
  Label1->Height = 24;
  Label1->Width= 50;
  Label1->Left = Panel1->Left+Panel1->Width/2-Label1->Width/2-50;
  Label1->Top = Panel1->Top+Panel1->Height/2-Label1->Height/2-40;
  Label1->Caption=EndGameString;

 TLabel *Label2 = new TLabel(this);
  Label2->Parent =Panel1;     //保证Panel1在底层,Label2在顶层
  Label2->AutoSize= true;
  Label2->Alignment=taCenter;
  Label2->Color = clGrayText;
  Label2->Font->Charset = DEFAULT_CHARSET;
  Label2->Font->Color = clWindowText ;
  Label2->Font->Height = -17    ;
  Label2->ParentColor = False;
  Label2->ParentFont = False ;
  Label2->Width= 60;
  Label2->Height = 24;
  Label2->Left = Panel1->Left+Panel1->Width/2-Label2->Width/2-50;
  Label2->Top = Panel1->Top+Panel1->Height/2-Label2->Height/2;
  Label2->Caption="还玩吗?";

 TButton *YesBtn = new TButton(this);
  YesBtn->Parent =this;
  YesBtn->Top=140;
  YesBtn->Left=60;
  YesBtn->Width= 75;
  YesBtn->Height =25;
  YesBtn->Caption = "YES";
  YesBtn->OnClick = YesBtnClick;
  YesBtn->Caption = "Yes";
  YesBtn->TabOrder = 0 ;

 TButton *NoBtn = new TButton(this);
  NoBtn->Parent =this;
  NoBtn->Top=140;
  NoBtn->Left=170;
  NoBtn->Width= 75;
  NoBtn->Height =25;
  NoBtn->Caption = "NO";
  NoBtn->OnClick = NoBtnClick;
  NoBtn->Caption = "No";
  NoBtn->TabOrder = 1 ;

};
//----------------------------------------------------------------------------
/*
分配NoBtnClick给控件的事件句柄。当用户揿击NoBtn时NoBtnClick将执行。
关闭应用程序。
*/
    void __fastcall TEndChessGameDlg::NoBtnClick(TObject *Sender)
    {
      PostMessage(MainForm->Handle,IDM_EXIT, 0,0);
      Close();
    }

//----------------------------------------------------------------------------
/*
分配YesBtnClick给控件的事件句柄。当用户揿击YesBtn时YesBtnClick将执行。建立棋盘
回到初始状态。
*/
  void __fastcall TEndChessGameDlg::YesBtnClick(TObject *Sender)
    {
    GameOver = false;
    PostMessage(Application->MainForm->Handle, IDM_FILENEW,0,0);
    Close();
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -