当前位置: 代码迷 >> QT开发 >> 关于Qt demos中俄罗斯方块的有关问题
  详细解决方案

关于Qt demos中俄罗斯方块的有关问题

热度:93   发布时间:2016-04-25 04:33:38.0
关于Qt demos中俄罗斯方块的问题!
为什么在Qt的俄罗斯方块例子中可以在paintevent外调用QPainter中进行绘图,例如: void TetrixBoard::showNextPiece(int width, int height)、void TetrixBoard::drawPauseScreen、void TetrixBoard::drawSquare等函数。(急需搞懂)

------解决方案--------------------
drawSquare 被 paintEvent 调用
showNextPiece 是画在 一个 QPixmap 上的。
有什么问题吗?

较老版本的 Qt 允许 paintEvent 外绘图。但新版本的不可以了。因为那个不好的设计。
在 paintEvent 外你可以画在一个位图里,然后在 paintEvent 里画这个位图就可以了。
------解决方案--------------------
探讨

请教一楼大虾,QFrame::paintEvent(event);有什么作用??