我正在尝试描绘我的图像的一些点,我不知道为什么它不起作用。我已经定义了一个QImage,我想修改一些点。
QImage *cou= new QImage(height,largeur,QImage::Format_Mono);
cou->fill(1);
QPainter *fig=new QPainter (cou);
for (i=0;i<size_;i++)
{
fig-> drawPoint(floor(propa[i]),nbmax[i]);
}
当我执行代码时,我获得了
QPainter::begin: Paint device returned engine == 0, type: 3
并在以下几行中:
QPainter::drawPoints: Painter not active
答案 0 :(得分:24)
QPainter::begin: Paint device returned engine == 0, type: 3
错误表示您尝试绘制的图像是空图像。使用isNull
上的cou
进行检查。
在构建图像时,图像为空的原因可能是错误的height
和largeur
参数,或者您的内存不足
答案 1 :(得分:2)
QPaintEngine* eng = cou->painterEngine();
if(eng) {
// create QPainter ...
}