QImage 判断加载的图像是否为空有2种方法
1. isNull()
QImage image = QImage("d:\src\new.jpg");
if(image.isNull())//如果图像为空
{
}
- 用于检测QImage对象是否未初始化或无效
- 返回true表示对象未初始化(如默认构造的QImage)
2.isEmpty()
QImage image = QImage("d:\src\new.jpg");
if(image.isEmpty())//如果图像为空
{
}
- 用于检测图像是否有有效尺寸(宽度或高度为0)
- 返回true表示图像尺寸为0x0
两种方法的区别在于:
- isNull()检查对象初始化状态,isEmpty()检查尺寸有效性
- 默认构造的QImage同时满足isNull()和isEmpty()
- 通过文件加载失败的图像通常isNull()为true
实际开发中建议优先使用isNull()进行判断,因其能覆盖更多无效情况。若需要严格验证尺寸可结合两种方法:
if(image.isNull() || image.isEmpty()) {
// 处理无效图像
}