QPainter不活跃

wro*_*ame 8 c++ qt qpainter

以下代码导致一堆错误:

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);
}
Run Code Online (Sandbox Code Playgroud)

错误:

QPainter::begin: Paint device returned engine == 0, type: 2
QPainter::setBrush: Painter not active
QPainter::drawRects: Painter not active
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个错误?

wro*_*ame 11

问题在于,正如科林指出的那样,pix大小为零.