Qt:几何类(QSize、QSizeF、QPoint、QPointF、QRect、QRectF)

一、QSize、QSizeF
(自定义对象中定义控件的大小(长*宽)) QSize::sizeHint函数
QSize:使用整数点精度定义二维对象的大小
QSizeF:使用浮点精度定义二维对象的大小

二、QPoint、QPointF (代表坐标轴中的点,由横坐标和纵坐标组成)
QPoint:使用整数精度定义平面中的点
QPointF:使用浮点精度定义平面中的点

三、QRect、QRectF
QRect:使用整数精度定义平面中的矩形
QRectF:使用浮点精度定义平面中的矩形
注意:对象参数列表:前两个参数为矩形的左上角X,Y坐标,后两个参数为宽和高(长度包含起点,所以实际长度减1)

//初始化
QRect r1(100,100,20,20);
QRect r2(QPoint(100,100),QSize(20,20)); 由起始坐标(100,100)和区域20*20组成的矩形。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt写的扫雷,比较简单,可以实现 #include "mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QWidget(parent) { this->setWindowIcon(QIcon(tr(":/images/ico.png"))); menuBar=new QMenuBar(this); gameMenu=new QMenu(tr("游戏(&g)"),this); menuBar->addMenu(gameMenu); newAction=new QAction(tr("新游戏"),this); newAction->setShortcut(tr("F2")); gameMenu->addAction(newAction); connect(newAction,SIGNAL(triggered()),this,SLOT(newGame())); startAction=new QAction(tr("开始"),this); startAction->setShortcut(tr("P")); gameMenu->addAction(startAction); connect(startAction,SIGNAL(triggered()),this,SLOT(gameStart())); startAction->setEnabled(false); pauseAction=new QAction(tr("暂停"),this); pauseAction->setShortcut(tr("P")); gameMenu->addAction(pauseAction); connect(pauseAction,SIGNAL(triggered()),this,SLOT(gamePause())); rankingAction=new QAction(tr("最高纪录"),this); rankingAction->setShortcut(tr("Ctrl+R")); gameMenu->addAction(rankingAction); connect(rankingAction,SIGNAL(triggered()),this,SLOT(showRanking())); quitAction=new QAction(tr("退出"),this); quitAction->setShortcut(QKeySequence::Quit); gameMenu->addSeparator(); gameMenu->addAction(quitAction); connect(quitAction,SIGNAL(triggered()),this,SLOT(close())); levelMenu=new QMenu(tr("难度(&l)"),this); menuBar->addMenu(levelMenu); aLAction=new QAction(tr("9x9,10个雷"),this); aLAction->setData("a"); levelMenu->addAction(aLAction); bLAction=new QAction(tr("16x16,40个雷"),this); bLAction->setData("b"); levelMenu->addAction(bLAction); cLAction=new QAction(tr("30x16,99个雷"),this); cLAction->setData("c"); levelMenu->addAction(cLAction); dLAction=new QAction(tr("自定义"),this); dLAction->setData("d"); levelMenu->addAction(dLAction); connect(aLAction,SIGNAL(triggered()),this,SLOT(setLevel())); connect(bLAction,SIGNAL(triggered()),this,SLOT(setLevel())); connect(cLAction,SIGNAL(triggered()),

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值