QGroupBox中控件怎样布局解决方案

QGroupBox中控件怎样布局解决方案,第1张

本文提供一个宏,可以按照通常对话框的布局要求快速为每个控件布局,对话框大小改变时,控件的大小和位置都会随之而改变。改变控件位置和大小的代码都在宏内部,你只需了解宏的作用即可达到所需布局。

注意,编写宏和测试环境为XP + VC++6.0SP6 + MFC,其他编译环境可能需对宏稍加修改,我相信你有这个实力。

[cpp] view plain copy

// CtrlId : 控件ID

// LeftChangeMode : 0:与窗口客户区左边的距离不变1:按比例变化2:保持控件宽度不变

// RightChangeMode : 0:与窗口客户区右边的距离不变1:按比例变化2:保持控件宽度不变

// TopChangeMode: 0:与窗口客户区上边的距离不变1:按比例变化2:保持控件高度不变

// BottomChangeMode : 0:与窗口客户区下边的距离不变1:按比例变化2:保持控件高度不变

#ifndef AUTO_SET_CONTROL_POS

问题描述:

QT中使用ui设计时设计出的界面显示后效果不一致

(如果ui界面所在类继承于QWidget似乎显示正常,但是如果继承的是其它自定义类可能出现显示不一致的问题,在网上找到说使用窗体布局(form)可以解决,但试过没效果)

问题解决

可以先尝试更换父类,如果无法更换父类似乎只能硬改了,直到达到想要的效果

1.控件尺寸不一致:如果界面尺寸已经固定(ui->setFixedSize(xx,xx)),在ui设计界面更改最小值最小值就行,使得最大最小值一致

2.GroupBox标题显示(ui设计时标题居左但显示时标题未居左显示):构造函数加上ui->GroupBox->setStyleSheet(“QGroupBox::title {subcontrol-position: top left}”)

3.控件边距过大或过小:ui->gridLayout_3->setSpacing(0)(gridLayout_3为窗口总体布局)或者在ui设计界面总体设置各个部件布局与间隔

qt

QT creator的ui界面和实际运行出来的界面不一致

8469阅读·7评论·4点赞


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11182655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存