QPainter::begin(): Returned false 如何修正?
时间: 2024-06-03 09:09:24 浏览: 14
这个问题通常是由于 QPainter 实例没有成功创建导致的。可以检查创建 QPainter 实例时传入的参数是否正确,以及是否在正确的位置调用 begin() 和 end() 函数。此外,还可以考虑使用 QPainter 的另一个构造函数来创建实例,或者查看是否需要调用 QWidget::paintEvent() 函数来正确使用 QPainter。
相关问题
QPainter::begin: Paint device returned engine == 0, type: 1
这个错误信息通常是由于在使用QPainter进行绘图之前没有设置绘图设备引起的。在使用QPainter进行绘图之前,需要先指定绘图设备,比如QWidget或QPixmap,然后再使用QPainter对其进行绘图。
你可以检查一下你的代码,看是否在使用QPainter进行绘图之前已经设置了绘图设备。如果没有,你可以在绘图之前先创建一个QWidget或QPixmap对象,并将其传递给QPainter,例如:
```cpp
QPixmap pixmap(width, height);
QPainter painter(&pixmap);
painter.drawXXX(...); // 进行绘图操作
```
这样就可以避免这个错误信息的出现了。
QPainter::begin: Paint device returned engine == 0, type: 2
这个问题是由于没有创建正确的绘图设备导致的。在使用QPainter绘图之前,必须先创建一个QPaintDevice对象,例如QWidget或QPixmap。请确保在调用QPainter的begin函数之前,已经将一个有效的QPaintDevice对象传递给它。同时,也需要注意在使用完QPainter之后调用其end函数,释放绘图设备资源。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)