读书人

关于逻辑变量的有关问题

发布时间: 2012-03-27 13:44:24 作者: rapoo

关于逻辑变量的问题
我编了一段程序,作用是如果Image1里没有图像则弹出一个MessageBox对话框。
代码是:
bool example;
if(Image1-> Picture-> LoadFromFile( "NULL ")) <------这是第51行
example=false;
else
example=true;
if(example==false)
{
Application-> MessageBoxA( "请输入图像 ", "提示 ",0);
return;
}
我觉得程序没什么问题,但在执行时总是提示这个错误:
[C++ Error] Newsearch1.cpp(51): E2034 Cannot convert 'void ' to 'bool '
我实在是不知道应该怎么改,谢谢回答!

[解决办法]
Image1-> Picture-> LoadFromFile( "NULL ")这个函数返回的是空值,类型错误
[解决办法]
用try
{}
catch
{}
捕获错误
[解决办法]
if条件里面返回的应该是个bool值
Image1-> Picture-> LoadFromFile( "NULL ");返回的不是bool类型的
[解决办法]
如果Image1里没有图像
====================

这个不太好判断,如果你的Image控件初始是空的,先将example初始化为false,然后再加载图像,如果加载成功再将example改为true.

bool example=false;//如果初始Image为空,否则反之
try
{
Image1-> Picture-> LoadFromFile( "图像文件路径 ");
example=true;
}
catch(...)
{
example=false;
Application-> MessageBoxA( "请输入图像 ", "提示 ",0);//图像加载错误
}

读书人网 >C++ Builder

热点推荐