求助:Windows API滚动条问题

cluber2001 2005-09-24 05:08:40
int cxFullScreen, cyFullScreen ;
cxFullScreen = GetSystemMetrics(SM_CXFULLSCREEN) ;//800
cyFullScreen = GetSystemMetrics(SM_CYFULLSCREEN) ; //581
。。。
。。。
cxClient = LOWORD (lParam) ;//784
cyClient = HIWORD (lParam) ;//546
si.cbSize = sizeof (si) ;
si.fMask = SIF_RANGE | SIF_PAGE ;
si.nMin = 0 ;
si.nMax = cyFullScreen/20 ;
si.nPage = cyClient/20 ;
SetScrollInfo (hwnd, SB_VERT, &si, TRUE) ;

si.cbSize = sizeof (si) ;
si.fMask = SIF_RANGE | SIF_PAGE ;
si.nMin = 0 ;
si.nMax = cxFullScreen/20 ;
si.nPage = cxClient/20 ;
SetScrollInfo (hwnd, SB_HORZ, &si, TRUE) ;
我的本意是想在窗口最大化的时候让滚动条消失
可是在窗口最大化的时候得到的
cxClient = LOWORD (lParam) ;//784
cyClient = HIWORD (lParam) ;//546
与在初始化时
cxFullScreen = GetSystemMetrics(SM_CXFULLSCREEN) ;//800
cyFullScreen = GetSystemMetrics(SM_CYFULLSCREEN) ; //581
得到的不一样,请教如何能在一开始就得到cxClient,cyClient的值
...全文
145 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cluber2001 2005-09-26
  • 打赏
  • 举报
回复
可是我想要的是最大化时客户区的大小,窗口创建时是默认大小,所以用
cxFullScreen = GetSystemMetrics(SM_CXFULLSCREEN) ;//800
cyFullScreen = GetSystemMetrics(SM_CYFULLSCREEN) ; //581
可是得到的东西却不对,大了一些
snowbirdfly 2005-09-25
  • 打赏
  • 举报
回复
是啊~
上面是得到客户区的大小~
在处理消息WM_CREATE,应该可以得到大小~~
SeekFor 2005-09-25
  • 打赏
  • 举报
回复
GetClientRect();

24,853

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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