如何解决AfxMessageBoxMFC函数存在一些问题
| 我正在制作一个使用Open.Cv从相机加载图片的程序。 而且我在AfxMessageBox()语句中收到错误。 程序:BOOL CObjectBoundDetectDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// Add \"About...\" menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu);
}
}
int nSelected = cvcamGetCamerasCount();
if(nSelected == 0)
{
AfxMessageBox(\"Camera have no connection\",MB_OK|MB_ICONSTOP);
return FALSE;
}
}
错误:
错误2错误C2665:\'AfxMessageBox \':2个重载都不能转换所有参数类型c:\\ program files \\ microsoft visual studio 10.0 \\ my project \\ objectbounddetect \\ objectbounddetect \\ objectbounddetectdlg.cpp 126 1个ObjectBoundDetect
如果我看一下AfxMessageBox()的定义...
[link]](http://msdn.microsoft.com/zh-cn/library/as6se7cb(v = vs.80).aspx)...它应该可以工作。但是我认为参数列表中存在一些问题。我不明白...
根据定义。AfxMessageBox()语句不应使我出错...
任何人都可以帮助我解决这个问题。
注意:摄像机已经连接,..摄像机没有问题。
解决方法
两种可能性:
尽管我对此表示怀疑,但您可能必须将其范围扩大到全球。为此,请尝试
::AfxMessageBox(\"Camera have no connection\",MB_OK|MB_ICONSTOP);
另一个是用途是为unicode构建的,它认为字符串是多字节的。为此,请尝试
AfxMessageBox( L\"Camera have no connection\",MB_OK|MB_ICONSTOP);
我不在Mac上,因此无法测试。但是我周末一直被困在办公室,所以我想提供两件事来尝试。
, AfxMessageBox( L\"Camera have no connection\",MB_OK|MB_ICONSTOP);
上面的代码可以正常工作。如果您仍然想使用:
AfxMessageBox(\"Camera have no connection\",MB_OK|MB_ICONSTOP);
您可以转到项目属性,在常规选项卡中,可以将字符集从\“使用Unicode字符集\”更改为\“使用多字节字符集\”
, 用途如下:
AfxMessageBox(_T(\"YOUR MESSAGE\"));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。