• 2758阅读
  • 3回复

关于QSpinBox高度的设置问题 [复制链接]

上一主题 下一主题
离线qazaq408
 

只看楼主 倒序阅读 楼主  发表于: 2017-04-25
我做了一个IP地址的输入器,我用4个(去掉按钮的)QSpinBox来作为4段IP地址的输入,这4个QSpinBox都用布局管理器放在一个QDialog上
在QDialog的构造函数里,我设置QSpinBox的为固定值,
  1. QHBoxLayout* main_Layout = new QHBoxLayout;
  2.     main_Layout->addWidget(lineEdit_List.at(0));
  3.     main_Layout->addWidget(symbol1_Label);
  4.     main_Layout->addWidget(lineEdit_List.at(1));
  5.     main_Layout->addWidget(symbol2_Label);
  6.     main_Layout->addWidget(lineEdit_List.at(2));
  7.     main_Layout->addWidget(symbol3_Label);
  8.     main_Layout->addWidget(lineEdit_List.at(3));
  9.     setLayout(main_Layout);
  10.     main_Layout->setSizeConstraint(QLayout::SetFixedSize);



然后布局是这样的,我希望的结果是这个窗体的高度就是QSpinBox的高度,但运行出来的结果却是这样的


这里主窗体的高度明显比QSpinBox的高度多出不少,开始我还以为这是窗体作为主窗体才会这样,然后我把这个窗体加到别的窗体里,他也会占据多余的高度,请问这个是什么情况?
离线never_forget

只看该作者 1楼 发表于: 2017-04-25
Qt 布局是有那个布局策略的的,这样代码实现的话,很可能是 Preferred 而不是 Expending ,所以才会这样,建议直接用 设计器 来做,方便一点,而且,你的电脑,真的,这个年头还有XP系统,我很佩服楼主,你让我看到了,什么叫执着~~~
离线qazaq408

只看该作者 2楼 发表于: 2017-04-25
回 never_forget 的帖子
never_forget:Qt 布局是有那个布局策略的的,这样代码实现的话,很可能是 Preferred 而不是 Expending ,所以才会这样,建议直接用 设计器 来做,方便一点,而且,你的电脑,真的,这个年头还有XP系统,我很佩服楼主,你让我看到了,什么叫执着~~~ (2017-04-25 16:44) 

1能不能说明下到底是个说明情况?应为我不会用UI设计
2公司电脑。出厂日期是2008年的。。。。
离线lemonzll

只看该作者 3楼 发表于: 2017-04-25
main_Layout->setContentsMargins(QMargins(0, 0, 0, 0));
快速回复
限100 字节
 
上一个 下一个