API怎么控制窗口的大小范围
怎么让窗口控制到一个范围,让客户区大小不小于200*200。我在WM_SIZE里:GetWindowRect(hwnd,&rect);if(cxClient<200)Mo...
怎么让窗口控制到一个范围,让客户区大小不小于200*200。我在WM_SIZE里:GetWindowRect(hwnd,&rect);if(cxClient<200)MoveWindow(hwnd,rect.left,rect.top,200+GetSystemMetrics(SM_CXBORDER)*2,rect.bottom,true);……为什么减小X方向,变得越来越长,改变Y方向,X变长,高手多谢了(手机提问代码没有输全)
展开
3个回答
展开全部
可通过覆盖cwnd的成员函数precreatewindow来修改主窗口和子窗口。precreatewindow函数在即将创建窗口前被调用,函数原型为:
virtual
bool
precreatewindow(createstruct
cs)
如果要覆盖
precreatewindow函数,则在创建窗口前可以修改
createstruct结构以替换缺省参数。createstruct结构存放窗口特征,如窗口坐标、风格等,还可以定义新窗口风格,
若想修改主框架窗口,则可以在mainfrm.cpp的下列成员函数中加入待修改的内容。例如:
bool
cmainframe::precreatewindow(createstruct&cs)
{
//通过修改createstruct结构来修改窗口类或风格
//定义新窗口的高度、宽度
cs.cx=450;
cs.cy=300;
//定义新窗口风格为去掉主窗口名及最大化等按钮
cs.style=ws-popwindo;
return
cframewnd::precreatewindow(cs);
}
定制子窗口的操作与上述主窗口相同,可在
childfrm.cpp中加入以下内容:
virtual
bool
precreatewindow(createstruct
cs)
如果要覆盖
precreatewindow函数,则在创建窗口前可以修改
createstruct结构以替换缺省参数。createstruct结构存放窗口特征,如窗口坐标、风格等,还可以定义新窗口风格,
若想修改主框架窗口,则可以在mainfrm.cpp的下列成员函数中加入待修改的内容。例如:
bool
cmainframe::precreatewindow(createstruct&cs)
{
//通过修改createstruct结构来修改窗口类或风格
//定义新窗口的高度、宽度
cs.cx=450;
cs.cy=300;
//定义新窗口风格为去掉主窗口名及最大化等按钮
cs.style=ws-popwindo;
return
cframewnd::precreatewindow(cs);
}
定制子窗口的操作与上述主窗口相同,可在
childfrm.cpp中加入以下内容:
网易云信
2023-12-06 广告
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同...
点击进入详情页
本回答由网易云信提供
展开全部
修改为:
MoveWindow(hwnd,rect.left,rect.top,rect.left+200+GetSystemMetrics(SM_CXBORDER)*2,rect.bottom,true);
MoveWindow(hwnd,rect.left,rect.top,rect.left+200+GetSystemMetrics(SM_CXBORDER)*2,rect.bottom,true);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
处理WM_GETMINMAXINFO消息
case WM_GETMINMAXINFO:
{
MINMAXINFO *pmmi = (MINMAXINFO*)lParam;
if (pmmi)
{
pmmi->ptMinTrackSize.x = 200;
pmmi->ptMinTrackSize.y = 200;
}
break;
}
case WM_GETMINMAXINFO:
{
MINMAXINFO *pmmi = (MINMAXINFO*)lParam;
if (pmmi)
{
pmmi->ptMinTrackSize.x = 200;
pmmi->ptMinTrackSize.y = 200;
}
break;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询