1.使用布局管理器失效

继承与mainwindow或者再mainwindow的窗口,使用布局管理器将不起作用。
mainwindow窗口有自己的布局管理方式,mainwindow中有个中心部件。
如果要在mainwindow中使用布局,可以new 一个widget部件,然后在该部件上使用布局管理器;最后设置该部件为中心部件。

2.使用布局管理器后,不能设置其中部件大小(setGeometry失效)。

使用布局管理器后,部件位置大小将由布局管理器控制。如果要指定部件的大小,可以使用setFixedsize函数。

void QWidget::setFixedSize(const QSize &s)
Sets both the minimum and maximum sizes of the widget to s, thereby preventing it from ever growing or shrinking.
This will override the default size constraints set by QLayout/*
设置部件的最大,最小尺寸都为s,用来防止拉伸及扩大。
这个操作将会覆盖布局管理器默认的限制。
*/

3.设置布局管理位置大小属性无效(layout setGeometry)

布局管理器的位置属性继承于父部件的大小(针对:QBoxLayout/QGridLayout)。

QBoxLayout/QGridLayout 官网介绍:
takes the space it gets (from its parent layout or from the parentWidget())
/* 部件的大小来自于父部件,或者父layout */

既然布局管理器大小由父部件空间大小决定,那么我们可以先在new一个部件,然后设置该部件的位置大小,最后在该部件上添加布局管理器。

4.布局管理器上添加各种部件后,例如水平布局管理器,部件大小位置异常。

布局管理器含有“margin”的边缘。

qt官网介绍:

void QLayout::setContentsMargins(int left, int top, int right, int bottom)
Sets the left, top, right, and bottom margins to use around the layout.
By default, QLayout uses the values provided by the style. On most platforms, the margin is 11 pixels in all directions.
This function was introduced in  Qt 4.3/*
设置上下左右边距,qt默认是11px
*/

可以使用以下函数,修改边距。

setMargin()函数(官方建议不要使用,存在是为了兼容旧版本)
setContensMargin()

Qt 使用布局管理器失效或者异常相关推荐

  1. QT 常用布局管理器

    Qt布局管理详解 详解 QT 布局管理界面 图文并茂 QT主要布局管理器分类 QHBoxLayout(水平布局) 把子窗口从左到右排列在一个水平行上. QWidget *window = new QW ...

  2. QT:布局管理器消息盒子对话框

    让组件在水平和垂直方向对齐 有三种常用布局管理器: 水平,QHBoxLayout 垂直,QVBoxLayout 网格,QGridLayout(使布局好的界面嵌套到主窗口) 1.让组件大小固定 修改属性 ...

  3. C++ Qt 05:Qt布局管理器 - 荒 木 - 博客园

    C++ Qt 05:Qt布局管理器 - 荒 木 - 博客园 下面我们以一个例子来初步了解Qt的组件定位技术,比如我们想做一个登录窗口,像下图这样,应该怎么做呢? 这还不简单嘛,在窗体上拖两个QLabe ...

  4. 【Qt教程】2.2 - Qt5 布局管理器(水平、垂直、栅格布局)、弹簧、设计一个登陆界面

    使用布局管理器,来设计一个登陆界面 都是操作,没代码没理论.参照:Qt设计一登陆窗口布局 1. 新建空工程 双击.ui文件,进入界面设计区. 我们新建工程时候,使用的是QMainWindow类,会自动 ...

  5. 【Qt】Qt布局管理器

    00. 目录 文章目录 00. 目录 01. 概述 02. 布局相关类 03. 布局图示 04. 为布局添加控件 05. 伸展因素 06. 布局中自定义控件 07. 手动布局 08. 附录 01. 概 ...

  6. 第六章 Qt布局管理器Layout

    第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...

  7. Qt 内存管理与布局管理器

    一.new与delete 在C++学习中,new与delete必须成对使用,防止内存泄漏,可是在学习Qt时,我发现很多new,而却几乎找不到delete.在网上搜索得知:Qt完善了C++的内存管理机制 ...

  8. [Qt] 迷宫随机生成和自动寻路算法、布局管理器、动态效果、界面切换、播放音频【迷宫、魔塔、超级玛丽】 -C++课程设计:Qt实现的迷宫与地牢游戏

    基于QT的迷宫与地牢小游戏开发 首先贴出链接: 完整Qt源码:点击进入https://download.csdn.net/download/qq_43365825/11852112 发布可执行程序:点 ...

  9. Android UI详解之布局管理器(一)

    Android UI详解之布局管理器 一.布局管理器 ①顶级父类View ②子类GroupView ③AbsoluteLayout.FrameLayout.LinearLayout.GridLayou ...

最新文章

  1. HPE第四季度财报数据喜忧参半
  2. makefile使用宏及用法$(宏标识符) $(cc)_宏编程的艺术
  3. SimpleRAR-攻防世界-Misc(图文详解),文件块和子块,图片的隐写二维码
  4. mongodb(2)
  5. [Java]==和equals()的区别(按照数据类型区分)
  6. 在IIS中启用父路径,不被黑客利用
  7. 【OpenCV 例程200篇】42. 图像的灰度变换(比特平面分层)
  8. 17pk扎金花基于层次的技术
  9. Qt工作笔记-QTableWidget设置委托(使用QStyledItemDelegate画3只小猪)
  10. C++socket编程(五):5.2 tcp编程总结
  11. 深度学习-吴恩达-笔记-2-神经网络的编程基础
  12. Pyhton-Web框架之【Django】
  13. Gerrit修改前一次提交的方法
  14. 我们不知道我们不知道:用同化项目做网络安全
  15. IBM heapAnalyzer分析dump文件
  16. my eclipse2014破解步骤(转载)
  17. sap的工作日历_ABAP-有关日期的SAP函数使用(日历)
  18. html5 321数字倒计时,JS实现的网页倒计时数字时钟效果
  19. 怀旧版大脚插件未能从服务器,魔兽世界怀旧服大脚插件怎么用 大脚插件安装使用攻略...
  20. Android 强大的图片加载缓存— Glide

热门文章

  1. Excel快速下拉填充序列至10000行
  2. 02 视频或语音转文本
  3. MySQL:带你掌握表的增删查改
  4. EXCEL基本功能 --- 三种常用的查找与引用函数
  5. 1_数据分析应掌握的Python基础
  6. (MySQL)Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...' for column 'readerName' at row 1
  7. MySQL Notifier
  8. sem学习的内容sem学习步骤sem适合的人群
  9. 0基础入行,新手该如何学习SEM
  10. Stream流基本使用