zoukankan      html  css  js  c++  java
  • PyQt(Python+Qt)学习随笔:Qt Designer中spacer部件的orientation属性

    在Designer的spacers部件中有2个部件,分别是Horizontal Spacer和Vertical Spacer,这两个部件都有orientation属性,表示Spacer部件的方向。
    如图:
    在这里插入图片描述
    第一个布局中的Spacer部件是Horizontal Spacer,方向是水平方向,第二个布局中的Spacer部件是Vertical Spacer部件,方向是垂直方向。

    我们把这两个布局中的Spacer部件的方向进行调换,将水平部件的方向改为垂直,垂直部件的方向改为水平,如图:
    在这里插入图片描述
    可以看到方向调整之后,两个Spacer部件的效果也调换了,我们再来看看UI界面文件生成的代码:
    第一种情况生成的代码分别为:

       spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_5.addItem(spacerItem)
       .......
       spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
       self.horizontalLayout_6.addItem(spacerItem1)
       
    

    第二种情况生成的代码为:

    spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
    self.horizontalLayout_5.addItem(spacerItem)
    .......
     spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
     self.horizontalLayout_6.addItem(spacerItem1)
    
    

    可以看到并没有方向orientation属性的直接代码,而是通过将宽度和高度两个值对调,同时sizePolicy的宽带和高度的sizePolicy也进行了对调。

    由此可见,无论是Horizontal Spacer还是Vertical Spacer,以及其设置不同的方向,本质上都是一致的,都是一个QSpacerItem类型的对象,在哪个方向扩展就将另一个方向的值设置小一点,并将自己方向的扩展测了设置为sizeType属性指定值,另一个方向的大小策略设置为Minimum。

    老猿Python,跟老猿学Python!

    博文目录

    博客地址

  • 相关阅读:
    .vsdx 在线查看 省的安装 visio 2013了
    桌面整理工具 rolan
    第一节、ES6的开发环境搭建
    $("[lay-id='"+this.id+"']")
    mathAge.call(btn) 函数call 改变函数内 this #js
    viewer && ImageFlow 图片滚动组件 图片点击放大 可以滚轮放大缩小 viewer
    ie11 突然不能加载外部css 很神奇 头部改为 <!DOCTYPE> <html>
    CODE[VS] 1219 骑士游历
    CODE[VS] 1169 传纸条
    CODE[VS] 1010 过河卒
  • 原文地址:https://www.cnblogs.com/LaoYuanPython/p/11931612.html
Copyright © 2011-2022 走看看