c++ messagebox 问题

2024-11-23 08:35:54
推荐回答(2个)
回答1:

拖动窗口怎么可能再次出现?

你这个消息盒子是放在什么函数中的???

那问题可能就出在你那个if(name[0]==0)判断中了。。。

因为你是case WM_PAINT,而每当拖动窗口,就会触发该消息,从而导致MessageBox()重复出现,好好检查一下IF语句,自己设个断点调试一下。

回答2:

把WM_PAINT事件改成鼠标点击事件

在处理消息的函数里添加如下代码:
bool IsMove;
case WM_MOUSEMOVE:
IsMove = true;
...

case WM_LBUTTONDOWN:
IsMove = false;
...

case WM_LBUTTONUP:
if(!IsMove)
if(name[0]==0){
::MessageBox(NULL, "要加载的图片文件名 不能空", _T("错误!"), (MB_OK) );
exit(0);
}