怎么让窗口中的所有部件随窗口按比例增大

 我来答
呆宝贝说不完9r
2016-07-23 · TA获得超过172个赞
知道小有建树答主
回答量:486
采纳率:50%
帮助的人:445万
展开全部
上策:WM_SIZE WM_SIZING消息 同时改变代码。(我也 不知道怎么写。)中策:用现成模块(设置控件锚点 古木的) (挺实用的)
下策:自带窗口尺寸改变事件 写代码 (麻烦,就算你设置好了,但在不同的分辨率下有问题。)

一:古木的模块代码。
.子程序 __启动窗口_尺寸被改变
设置控件锚点 (编辑框1.取窗口句柄 (), 真, 真, 真, 真)
设置控件锚点 (按钮1.取窗口句柄 (), 真, 假, 真, 真)
模块下载地址:
二:自带窗口尺寸改变事件
.子程序 __启动窗口_尺寸被改变
编辑框1.移动 (2, 2, _启动窗口.宽度 - 4, _启动窗口.高度 - 4)
百度网友000ba5e
2016-07-23 · TA获得超过5066个赞
知道大有可为答主
回答量:2634
采纳率:0%
帮助的人:1150万
展开全部
基本上重新实现QWidget的resizeEvent()函数就可以达到你的要求了。
void xxx:resizeEvent( QResizeEvent* e)
{
QSize oldSize,size;
oldSize = e->oldSize(); //获取开始的size
size = e->size(); //获取现在的size

//获取长宽变化的比率
qreal ratioW,ratioH;
ratioW = size.width()/oldSize.width();
ratioH = size.height()/oldSize.height();

//窗体中的控件按比例缩放
m_item1->resize(QSize(m_item1->size().width()*ratioW,
m_item1->size.height()*ratioH));
//如果你有很多控件,请继续缩放下去……
..............
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式