在使用Form之前,需要将Form上的对象放置到布局中。这确保在应用程序中预览或使用Form时,对象将正确显示。在布局中放置对象还可以确保在调整窗体大小时它们也能正确调整大小。

应用和打断布局

管理对象的最简单方法是对一组现有对象应用布局。通过选择需要管理的对象并使用主工具栏、菜单或上下文菜单应用到标准布局来实现的。

一旦将窗体/控件(widgets)插入到布局中,就不可能单独移动和调整它们的大小,因为布局本身控制着其中每个控件的几何形状,并考虑到spacers提供的提示。在这中情况下,您必须打破布局并手动调整每个对象的几何形状,或者通过调整布局大小来影响控件的几何形状。

要打破布局,请按选中布局并按住Ctrl+0(注意是0)或从窗体的上下文菜单、窗体菜单或主工具栏中选择break layout。还可以从布局中添加和删除间隔符(spacers),以影响小部件的几何形状。

在对象中插入布局

将对象插入到现有布局可以通过拖拽实现,在拖拽的时候,布局中会显示一个蓝色光标,以指示对象将被添加到何处。

如图在Button3拖拽到Button2下面时,会显示蓝色光标,这是放开左键,Button3就会放置到Button2下面

设置顶层布局

可以通过清除选择(单击窗体上的鼠标左键)并应用布局来设置窗体的顶层布局。顶层布局是确保控件在窗口调整大小时能够正确调整大小。要检查是否设置了顶层布局,预览widget并尝试通过拖动来调整窗口的大小。

在上图中如果我们没有设置顶层布局,那么在预览的时候三个按键的大小不会随者窗口的改变而改变。我们观察右侧,会发现有个红色圆圈标识。

空白处右键Lay out->随便选择一种布局,红色圆圈标识消失,并且预览后你会发现button的大小会随者窗体大小而变化

布局选择——可以通过Qt Designer左边的控件盒子(Widget Box->Layouts)

或者右键

垂直和水平布局

在窗体上排列对象的最简单方法是将它们放置在水平或垂直布局中。水平布局确保内部小部件水平对齐;垂直布局确保它们垂直对齐。水平和垂直布局可以组合和嵌套到任何深度。但是,如果您需要对对象的位置有更多的控制,最好使用网格布局(grid layout)。

网格布局(Grid Layout)

复杂的表格布局可以通过在网格布局中放置对象来创建。这种布局让表单设计人员可以更自由地在表单上安排小部件,但会导致更不灵活的布局。然而,对于某些形式布局,网格布局比水平和垂直布局的嵌套布局更适合。

拆分器布局(Splitter Layouts)

管理窗体上对象布局的另一种常见方法是将它们放在拆分器中。这些分配器以与正常布局相同的方式水平或垂直地排列对象,但也允许用户调整分配给每个对象的空间数量。

尽管QSplitter是一个容器控件,但Qt Designer将splitter对象视为应用于现有控件的布局。要将一组控件放到splitter中,请按此处描述的方式选择它们(控件放置好后,空白处点击右键拖动到控件另一边的空白处选择控件,然后右键),然后使用适当的工具栏按钮、键盘快捷方式或布局上下文菜单项应用splitter布局。

表单布局(Form Layout)

从Qt4.4开始,又加入了一个layout类——QFormLayout。这个类以两列的形式管理小部件;左列包含标签,右列包含控件,如line edits, spin boxes等。QFormLayout类遵循各种平台外观指导原则,支持对长行进行包装。

快捷键

除了标准的工具栏和上下文菜单项之外,还有一组键盘快捷方式,用于在控件上应用布局。

LayoutShortcutDescription

HorizontalCtrl+1Places the selected objects in a horizontal layout.

VerticalCtrl+2Places the selected objects in a vertical layout.

GridCtrl+5Places the selected objects in a grid layout.

FormCtrl+6Places the selected objects in a form layout.

Horizontal splitterCtrl+3Creates a horizontal splitter and places the selected objects inside it.

Vertical splitterCtrl+4Creates a vertical splitter and places the selected objects inside it.

Adjust sizeCtrl+JAdjusts the size of the layout to ensure that each child object has sufficient space to display its contents. See QWidget::adjustSize() for more information.

————————————————

版权声明:本文为CSDN博主「JAMO_WOO」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/jxwzh/article/details/81673223

qtdesigner设计表格_使用Qt Designer进行布局相关推荐

  1. qtdesigner设计表格_实例9 利用Qt Designer设计一个对话框

    在Qt编程中,程序员通常都是使用手动编写Python源代码来进行Qt程序开发,但有些程序员也喜欢使用可视化的方法进行对话框设计,因此,Qt为习惯利用可视化方式进行窗口程序设计的程序员提供了Design ...

  2. qtdesigner设计表格_QT Designer基础——登录界面设计基础版

    认识QT Designer提供的可选控件:以下八个大类 Layouts:布局相关 Spacers:留空 Buttons:可点击的按钮类 Item Views和 Item Widgets:高级控件,例如 ...

  3. qtdesigner设计表格_PyQt:使用QtDesigner设计界面

    目录 1.安装pyqt5designer.pyqt5 2.pycharm中添加外部工具 3.使用QtDesigner设计页面 1.安装相关库 pip install pyqt5designer pip ...

  4. python qtdesigner 提升类_python3+PyQt5+Qt Designer实现扩展对话框

    本文是对<Python Qt GUI快速编程>的第9章的扩展对话框例子Find and replace用Python3+PyQt5+Qt Designer进行改写. 第一部分无借用Qt D ...

  5. qt怎么可以随意设置自己想要的表格_【Qt开发】QTableWidget的详细设置

    在使用Qt不多的日子里,已经两次用到了QTableWidget这个控件,也慢慢的习惯和喜欢上了它.再使用QTableWidget的时候,已不像刚开始使用时的迷茫.嗯嗯.现在就来总结总结我与QTable ...

  6. Qt Designer中布局工具的使用

    从anaconda启动QtDesigner anaconda3是自带QtDesigner以及pyqt库的.QtDesigner的位置在%anaconda3%\Library\bin文件夹(其中%ana ...

  7. 使用Qt Designer和Qss设计Qt界面

    开发界面其实一点都不比写后台逻辑简单,后台逻辑对需求方来说只有能用和不能用,但是界面没有一个确切的标准说好看还是不好看,所以设计出一个大家都说好的界面真的很难. 我们的业务是服务于内部用户的,其实大家 ...

  8. 用 Qt Designer 创建可扩展对话框

    前面我们设计的对话框都是不能改变它的样子的.但是有时需要对话框根据要求进行适当的改变.两个最常用的需要改变的对话框是可扩展对话框和多页对话框.这两种类型的可以通过代码编写,也可以用Qt Designe ...

  9. PyQt5学习笔记02----初探Qt Designer 设计师

    网上很多教程都是纯代码,对于新手看起来就很头疼,pyqt为我们提供了Qt designer来设计窗口界面,用起来也非常方便.对于新手来说应该善用它,虽然做出来的界面不那么华丽,但至少可以做出个像样的窗 ...

  10. Python 之 Qt Designer工具相关安装配置

    一.pyqt5.pyqt5-tool.paramiko.pyInstaller安装 直接在线安装: pip3 install PyQt5 pip3 install PyQt5-tools pip3 i ...

最新文章

  1. 如何在STS中创建Spring Boot项目
  2. python数据库连接池_Python实现数据库连接池
  3. html频谱跳动效果,HTML5音频可视化频谱跳动代码
  4. pmod ad2 digilent 提供的pmodad2.c和pmodad2.h
  5. linux常用shell命令之文件操作命令
  6. Windows下定时器与多线程的区别
  7. iOS Unicode转中文(UTF-8)
  8. ISSCC 2017论文导读 Session 14: A 28nm SoC with a 1.2GHz Prediction Sparse Deep-Neural-Network Engine
  9. 【小编教你有效的保护视力】
  10. C# Math函数汇总
  11. 安全无污染的激活win7(官方)
  12. PS-第四天-矢量形状与路径
  13. VisualSVN Server的安装
  14. Spring Boot安装及使用(2021.10.28)
  15. mysql查询大于0的标记,Mysql计数列大于0
  16. docker 根据镜像名称查找容器并删除
  17. 408计算机组成原理知识点常考点总结
  18. 根据身份证号获取地址、年龄、星座、生肖、生日、性别等基本信息
  19. 如何做facebook营销
  20. 请求数据出现200(from disk cache)

热门文章

  1. 人工智能导论学习笔记
  2. Win10下连接树莓派ZeroW(附win10虚拟网卡驱动下载)
  3. VS2019 编译 odb-mysql2.4详细过程
  4. Ricequant-估值因子的分析
  5. 木疙瘩动画效果视频学习
  6. 小程序应用 饿了么美团外卖cps领券返利小程序+前端(带三级分销裂变)
  7. 学习java之前应该先了解哪些知识?
  8. checkbox在ftl文件的使用
  9. 安全视角下的CAN协议分析
  10. 走进波分 -- 14.OSN902产品介绍