日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt版本中国象棋开发(二)

發(fā)布時(shí)間:2024/1/17 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt版本中国象棋开发(二) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

實(shí)現(xiàn)功能:棋盤繪制

核心函數(shù):

void paintEvent(QPaintEvent *); //QWidget自帶的虛函數(shù),重寫后使用 QPainter 類來繪制圖形 QPainter painter(this); //QPainter 相當(dāng)于畫筆 painter.drawLine(QPoint(x, y), QPoint(x, y)); //drawLine(QPoint(x, y), QPoint(x, y))畫直線

核心代碼: 1 void Board::paintEvent(QPaintEvent *) 2 { 3 QPainter painter(this); 4 int d = 40; 5 // 畫10橫線 6 for(int i=1; i<=10; ++i) 7 { 8 painter.drawLine(QPoint(d, i*d), QPoint(9*d, i*d)); 9 } 10 // 畫9豎線 11 for(int i=1; i<=9; ++i) 12 { 13 if(i==1 || i==9) 14 painter.drawLine(QPoint(i*d, d), QPoint(i*d, 10*d)); 15 else 16 { 17 painter.drawLine(QPoint(i*d, d), QPoint(i*d, 5*d)); 18 painter.drawLine(QPoint(i*d, 6*d), QPoint(i*d, 10*d)); 19 } 20 } 21 22 // 九宮格 23 painter.drawLine(QPoint(4*d, 1*d), QPoint(6*d, 3*d)); 24 painter.drawLine(QPoint(6*d, 1*d), QPoint(4*d, 3*d)); 25 26 painter.drawLine(QPoint(4*d, 8*d), QPoint(6*d, 10*d)); 27 painter.drawLine(QPoint(6*d, 8*d), QPoint(4*d, 10*d)); 28 29 30 } View Code

效果圖:

? ? ? ? ? ? ? ? ? ? ? ?





轉(zhuǎn)載于:https://www.cnblogs.com/weiyikang/p/6361279.html

總結(jié)

以上是生活随笔為你收集整理的Qt版本中国象棋开发(二)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。