【问题标题】:QPainter not activeQPainter 未激活
【发布时间】:2010-12-03 01:30:16
【问题描述】:

以下代码导致一堆错误:

void MainWindow::displayBoard()
{
    QPixmap pix(0,0);
    pix.fill(Qt::white);
    QPainter painter(&pix);
    painter.setBrush(Qt::black);
    for(int row = 0; row < 8; row++)
        for(int col = 0; col < 8; col++)
            painter.drawRect(row * 10, col * 10, 10, 10);
    ui->label->setPixmap(pix);
}

错误:

QPainter::begin: Paint device returned engine == 0, type: 2
QPainter::setBrush: Painter not active
QPainter::drawRects: Painter not active

我该如何解决这个错误?

【问题讨论】:

  • 问题可能是您的像素图大小为 0x0
  • @Colin 是的,谢谢!想尝试输入它作为答案吗?

标签: c++ qt qpainter


【解决方案1】:

问题在于,正如 Colin 所指出的,pix 的大小为零。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-31
    • 2023-03-08
    • 2013-02-15
    • 2021-03-27
    相关资源
    最近更新 更多