当前位置: 首页 > news >正文

Qt Desginer布局方法

首先将我们需要的控件拖拽到一个合适的位置,该例子中用到了两个label,两个lineEdit和两个pushButton。

在这里插入图片描述
然后我们需要利用弹簧来控制控件到控件之间的距离以及控件到窗体边界的距离,因为这里只有一组控件(两个label,两个lineEdit和两个pushButtton),因此不需要控制该组控件到其他组控件的距离,只需要控制该组控件到窗体边界的距离,这里用到了两个水平弹簧和两个垂直弹簧。
在这里插入图片描述

在这里插入图片描述
确定好控件到其它组控件的距离以及到窗体边界的距离后,就需要将这些控件进行一整个布局,这里使用栅格布局更为合适,选中上面所有需要进行布局的控件,然后点击工具栏的栅格布局。
在这里插入图片描述

在这里插入图片描述
上面只是将窗体上的这些控件进行一个布局,为了让这些控件自适应窗口变化,我们还需要将整个窗体进行一个布局,右击空白处,选择布局,选择垂直布局或者水平布局,然后所有控件就会自适应窗口变化了。

上面的例子中只有一组控件,即两个label,两个lineEdit和两个pushButton,我们确定该组控件到其他组控件及窗体边界的距离后,就对这一组控件进行布局,然后对整个窗体进行布局,如果有好几组控件,那么我们需要先控制这几组控件之间以及它们到窗体边界的距离,然后分别对这好几组控件进行布局,最后再对整个窗体进行布局。

通过上述例子可以知道,我们需要先控制好控件到控件以及控件到窗体边界的距离,再对这些控件进行一个水平布局或者垂直布局或者栅格布局,最后再对整个窗体进行布局以使得控件自适应窗口变化。值得注意的是在第二步,对这些控件进行布局时,不能选中它们进行表单布局,原因是工具栏中没有这个选项。
如果要使用表单布局,我们只能先创建一个表单布局,将控件拖拽进去后,再控制整个表单布局到其它控件以及到窗体边界的距离,最后再对窗体进行一个整体布局

上述例子利用表单布局的步骤如下:

首先创建一个表单布局如下:
在这里插入图片描述

然后将需要用到的控件拖拽到表单布局中,注意由于表单布局中是按表单格式进行布局的,因此“登录”和“取消”按钮不能直接同时放入一行,我们只能将“登录”和“取消”按钮水平布局为一组后将它们放入一行:

在这里插入图片描述
然后开始利用弹簧来控制表单布局到其他组控件以及到窗体边界的距离,由于这里只有这一组控件,因此只需要控制表单布局到窗体边界的距离。

在这里插入图片描述

然后进行整体布局,注意如果使用垂直布局的话,水平弹簧就会失效,如果使用水平布局的话,垂直弹簧就会失效。所以这里只能使用栅格布局,右击空白处,选择布局,然后选择栅格布局:
在这里插入图片描述

然后运行,就会得到想要的结果,且控件自适应窗口变化。

总结下来就是:我们需要先控制好控件到控件以及控件到窗体边界的距离,再对这些控件进行一个水平布局或者垂直布局或者栅格布局,最后再对整个窗体进行布局以使得控件自适应窗口变化。值得注意的是在第二步,对这些控件进行布局时,不能选中它们进行表单布局,原因是工具栏中没有这个选项。
如果要使用表单布局,我们只能先创建一个表单布局,将控件拖拽进去后,再控制整个表单布局到其它控件以及到窗体边界的距离,最后再对窗体进行一个整体布局,而且由于使用垂直布局,水平弹簧就会失效,使用水平布局,垂直弹簧就会失效,因此如果在控制距离时既使用了水平弹簧,又使用了垂直弹簧,我们只能选择栅格布局来对整个窗体进行一个布局。

http://www.lryc.cn/news/11938.html

相关文章:

  • C/C++、Java、Python的比较及学习(3)
  • 智慧校园建设方案
  • ARM uboot 源码分析5 -启动第二阶段
  • 【ip neigh】管理IP邻居( 添加ARP\NDP静态记录、删除记录、查看记录)
  • Java程序员线上排查问题神器-Arthas
  • 上市公司企业持续创新能力、创新可持续性(原始数据+计算代码+计算结果)(2008-2021年)
  • 华为OD机试 - 考古学家(JS)
  • Leetcode.2100 适合打劫银行的日子
  • linux ubuntu查日志信息以及错误排查
  • DOS经典软件,落下帷幕,新型国产平台,蓬勃发展
  • MongoDB数据存储格式
  • ARC126D Pure Straight
  • 基于RK3588的嵌入式linux系统开发(四)——uboot镜像下载(基于RKDevTool工具)
  • 设计模式之策略模式与责任链模式详解和应用
  • 广度优先搜索(BFS)-蓝桥杯
  • Java Type类
  • Springboot扩展点之CommandLineRunner和ApplicationRunner
  • ngixn 常用配置之文件类型与自定义 log
  • 【100个 Unity实用技能】 | Unity 通过自定义菜单将资源导出
  • 0.3调试opencv源码的两种方式
  • Redis的常见操作和Session的持久化
  • TypeScript笔记(二)
  • 【MyBatis】源码学习 03 - 类型处理器 TypeHandler
  • 建造《流浪地球2》中要毁灭人类的超级量子计算机MOSS的核心量子技术是什么?
  • 数据结构~七大排序算法(Java实现)
  • python练习
  • RPC-thrift实践
  • Maven:工程的拆分与聚合
  • 使用uniapp创建小程序和H5界面
  • 密度峰值聚类算法(DPC)