国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

基于C++和MFC開發(fā)象棋程序

2020-05-23 13:38:23
字體:
供稿:網(wǎng)友

這是我要和大家分享的基于C++和MFC開發(fā)的一個(gè)象棋程序,目的是練習(xí)編程實(shí)踐和大家分享同時(shí)希望大家能給出指教。

進(jìn)入主題

一、棋盤分析

  這是我繪制的棋盤,棋盤的組成由9條豎線和10條橫線構(gòu)成。這兒我們設(shè)置每條線間的間隔是50。

C++,MFC,象棋程序

二、繪制過程

1、在vs中新建MFC程序,去除環(huán)境自動生成的按鈕和文字。

C++,MFC,象棋程序

2、打開***Dlg.cpp文件,在void CChessDlg::OnPaint()中定義一個(gè)棋盤間隔值和繪圖設(shè)備CDC *cd = CWnd::GetDC();

int nWid = 50;CDC *cd = CWnd::GetDC();

3、繪制棋盤橫線

//畫橫線for (int i = 1; i < 11; ++i){ cd->MoveTo(nWid, i * nWid); cd->LineTo(9 * nWid, i * nWid);}

4、繪制棋盤豎線

//畫豎線for (int i = 1; i < 10; ++i){  //繪制棋盤兩側(cè)線段 if(1 == i || 9 == i) {  cd->MoveTo(i * nWid ,nWid);  cd->LineTo(i * nWid,10 * nWid); } else//繪制棋盤中間的幾條豎線 {  cd->MoveTo(i * nWid ,nWid);  cd->LineTo(i * nWid,5 * nWid);  cd->MoveTo(i * nWid,6 * nWid);  cd->LineTo(i * nWid,10 * nWid); }}

5、繪制九宮格

//畫九宮格cd->MoveTo(4 * nWid ,nWid);cd->LineTo(6 * nWid,3 * nWid);cd->MoveTo(6 * nWid, nWid);cd->LineTo(4 * nWid,3 * nWid);cd->MoveTo(4 * nWid ,8 * nWid);cd->LineTo(6 * nWid,10 * nWid);cd->MoveTo(6 * nWid, 8 * nWid);cd->LineTo(4 * nWid,10 * nWid);

到這里我們的棋盤就繪制好了下面是完整代碼

  CDialogEx::OnPaint();  int nWid = 50;  CDC *cd = CWnd::GetDC();  //畫橫線  for (int i = 1; i < 11; ++i)  {   cd->MoveTo(nWid, i * nWid);   cd->LineTo(9 * nWid, i * nWid);  }  //畫豎線  for (int i = 1; i < 10; ++i)  {   if(1 == i || 9 == i)   {    cd->MoveTo(i * nWid ,nWid);    cd->LineTo(i * nWid,10 * nWid);   }   else   {    cd->MoveTo(i * nWid ,nWid);    cd->LineTo(i * nWid,5 * nWid);    cd->MoveTo(i * nWid,6 * nWid);    cd->LineTo(i * nWid,10 * nWid);   }  }  //畫九宮格  cd->MoveTo(4 * nWid ,nWid);  cd->LineTo(6 * nWid,3 * nWid);  cd->MoveTo(6 * nWid, nWid);  cd->LineTo(4 * nWid,3 * nWid);  cd->MoveTo(4 * nWid ,8 * nWid);  cd->LineTo(6 * nWid,10 * nWid);  cd->MoveTo(6 * nWid, 8 * nWid);  cd->LineTo(4 * nWid,10 * nWid);

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 蕲春县| 淳化县| 锡林郭勒盟| 嘉义县| 静海县| 万载县| 灵丘县| 东安县| 淳化县| 东港市| 蒲城县| 日土县| 高唐县| 永德县| 陆川县| 汝州市| 巴塘县| 临武县| 平定县| 汉源县| 宁国市| 鄂托克旗| 海伦市| 竹北市| 高青县| 白山市| 桂东县| 宜城市| 淳化县| 祥云县| 恭城| 大名县| 息烽县| 林州市| 密云县| 类乌齐县| 庆元县| 泸水县| 马关县| 陆良县| 三都|