当前位置: 代码迷 >> QT开发 >> qt 座标标注
  详细解决方案

qt 座标标注

热度:92   发布时间:2016-04-25 03:55:19.0
qt 坐标标注
void track::paintEvent(QPaintEvent* )
{
    QPainter painter(this);
    //画背景格子
    painter.setBrush(QBrush(Qt::white,Qt::SolidPattern));//将笔刷设置成黄颜色
    painter.drawRect(0, 0, trackWidth, trackHeight);//调用矩形函数画背景
    int cubeWidth=trackWidth/8;//列宽
    int cubeHeight=trackHeight/4;//行宽.
    painter.setPen(QPen(Qt::black,1,Qt::DashLine));//设置画笔为黑色,宽度是1,虚线
    for(int i = 0; i < 9; i++)//画列
    {
        painter.drawLine(cubeWidth * i, 0, cubeWidth * i, trackHeight);
    }
    for(int i = 0; i < 5; i++)//画行
    {      
        painter.drawLine(0,cubeHeight * (i), trackWidth, cubeHeight * (i));
    }
我画了5条横线9条竖线,打了格子,想在想问的是如何在格子上做坐标标注。详细见图
Qt 坐标标注

------解决方案--------------------
坐标这个东西要算的吧,我也是刚开始弄这个,应该是你窗口的总宽度,除以你画的格子数,或者是你画的线数,然后再乘以一个你想要的坐标是在第几条线那里,应该是这样的,具体的需要慢慢算,我画棋盘就是那么画的,放置棋子
------解决方案--------------------
在你话线的循环中画坐标,只不过一个y取0,一个x取0
  相关解决方案