关于工具栏和状态栏的使用(请各位帮帮忙)

absolutelyzero 2005-09-15 08:52:39
在win32的一个程序里我在一个窗口中加进了状态栏和工具栏,但不知道为什么当我改变窗口的大小时,状态栏的位置和大小不能跟着窗口一起改变,工具栏也是(长度不能跟着改变)
请各位帮帮我!!!
多谢了
...全文
228 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
iswjh 2005-09-17
  • 打赏
  • 举报
回复
响应WM_SIZE
LRESULT CALLBACK MainWndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
switch(msg)
{
case WM_SIZE:
{
MoveWindow(GetDlgItem(hwnd,IDR_TOOLBAR),0,0,LOWORD(lParam),nToolBar_Height,TRUE);
MoveWindow(GetDlgItem(hwnd,IDR_STATUSBAR),0,HIWORD(lParam)-nStatusBar_Height,LOWORD(lParam),nStatusBar_Height,TRUE);

}
break;
....

default:
return DefWindowProc(...)
}

return 0;
}
菜牛 2005-09-16
  • 打赏
  • 举报
回复
这是Win32,所有窗口大小、位置都要自己调整的,响应WM_SIZE消息,用MoveWindow来修改。
absolutelyzero 2005-09-16
  • 打赏
  • 举报
回复
不知道为什么就是不动
KennyLiu 2005-09-16
  • 打赏
  • 举报
回复
“响应WM_SIZE消息,用MoveWindow来修改”

同意!!!
absolutelyzero 2005-09-16
  • 打赏
  • 举报
回复
我试了试楼上的办法还是不行,还请各位帮帮忙,最好可以详谈,我的qq是414455780
以解决就给分
absolutelyzero 2005-09-15
  • 打赏
  • 举报
回复
还是不太明白
vcmute 2005-09-15
  • 打赏
  • 举报
回复
如果是Dialog,在OnSize中改变位置
vcmute 2005-09-15
  • 打赏
  • 举报
回复
CFrameWnd::RecalcLayout
virtual void RecalcLayout( BOOL bNotify = TRUE );

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧