永发信息网

MFC如何设置afxmessagebox出现的位置

答案:3  悬赏:50  手机版
解决时间 2021-03-13 05:54
  • 提问者网友:最美的风景
  • 2021-03-12 12:09
MFC如何设置afxmessagebox出现的位置
最佳答案
  • 五星知识达人网友:轻雾山林
  • 2021-03-12 13:02
AfxMessageBox是无法控制出现位置的,这是一个封装的快速提示。
需要一个指定位置或者指定样式、大小的提示框,自己做一个Dialog就好了,这样你可以通过参数控制,在OnInitDialog里面通过MoveWindow控制对话框位置。
全部回答
  • 1楼网友:枭雄戏美人
  • 2021-03-12 14:06
嗯... , afxmessagebox 默认是不支持自定义位置和大小的, api 的 ::messagebox 也不支持. 要能调整位置, 最直接的是..自己做一个 messagebox , 要用的时候 domodal 如果一定要用 afxmessagebox ,可以这样: 先自定义一个消息映射 #define wm_msgbox_move (wm_user + 100) begin_message_map(your dialog) .... on_message(wm_msgbox_move , onmsgboxmove) end_message_map() void cxxxxdlg::onmsgboxmove() { hwnd hwnd = ::getforegroundwindow(); // 得到 messagebox crect rect; ::getwindowrect(hwnd, &rect); ::movewindow(hwnd, 100, 100, rect.width(), rect.height(), true); // 这里是移动到 100,100 } 在需要显示 的地方这么用 postmessage(wm_msgbox_move ); afxmessagebox("test");
  • 2楼网友:傲气稳了全场
  • 2021-03-12 13:14
提示内容位置不好控制,可以加通过加空格和回车换行符来控制,但是比较麻烦。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯