Qt绘制中国象棋棋盘
2024-09-05 15:07:19
这里主要用的是#include <QPainter>里面的paintEvent
void Board::paintEvent(QPaintEvent*)
{
QPainter painter(this);
int d=40;
//画10条横线
for(int =1;i<=10;i++)//从1开始,就不会使得棋盘处在边界
{
painter.drawLine(QPoint(d,i*d),QPoint(9*d,i*d));
}
//画9条竖线
for(int i=1;i<=9;i++)
{
if(i==1||i==9)
{
painter.drawLine(QPoint(i*d,d),QPoint(i*d,10*d));
}
else
{
painter.drawLine(QPoint(i*d,d),QPoint(i*d,5*d));
painter.drawLine(QPoint(i*d,6d),QPoint(i*d,10*d));
}
}
//九宫格
painter.drawLine(QPoint(4*d,1*d),QPoint(6*d,3*d));
painter.drawLine(QPoint(6*d,1*d),QPoint(4*d,3*d));
painter.drawLine(QPoint(4*d,8*d),QPoint(6*d,10*d));
painter.drawLine(QPoint(6*d,8*d),QPoint(4*d,10*d));
}
效果图如下:
最新文章
- cocos 锚点、包围盒
- iOS开发——UI基础-屏幕适配
- [codeforces 339]E. Three Swaps
- DataTable与DataSet
- oracle 游标笔记
- 微信lbs---返回两个经纬度坐标点的距离
- 【POJ 2987】Firing (最小割-最大权闭合子图)
- HTML5实战之桌面通知
- Qt自定义带游标的slider,在滑块正上方显示当前值(非常有意思,继承QSlider之后增加一个QLabel,然后不断移动它)
- jquery遍历筛选数组的几种方法和遍历解析json对象
- oracle恢复一个数据表的方法
- gnome配置
- this的四种绑定形式
- Get 请求 与 Post 请求的区别
- linux第一次读书笔记
- grafana worldPing插件
- powerdesign连接Oracle&;Mysql
- Android JNI的使用方法
- freemarker XMLGregorianCalendar 转日期
- 【比赛】NOIP2017 奶酪