ZC:Delphi中只要随便拖几个控件,设置一下属性就OK了。但是,Qt中 貌似没有 方便的方式来做这个...

ZC:目前的解决方案是:Qt中 拖几个控件,然后点 工具条里面的 "栅格布局(G)"

    

1、想实现 类似 Delphi 中的效果:跟着 窗口大小变,上面部分的控件 不动。如下图,上面2个 button不动,下面的 Memo随着窗口的大小变化而变化:

  

    

2、20190404  暂时的方案:

  主要思想:主界面 栅格布局,分成上下两部分:

   上半部分 将 最小高度和最大高度 设置成一样的(这样上半部分的高度就固定了),

   下半部分的高度将自动填充剩余部分(如果不行的话,还可以尝试 设置 属性rowspan/colspan)

  结构:

   主界面 栅格布局

    上半部分--> QWidget --> 里面可以放置 QPushButton等控件

    下半部分--> QGridLayout --> 里面只有一个 自定义的控件"WndGL_Z"(继承自类"QOpenGLWidget")

 (1)、效果图

  

  PS:截图时,鼠标正拖动着pushButton,∴ 没有截到它

 (2)、ui 源码:(使用的话,注意:不知直接带注释 复制粘贴到ui文件是否OK)

  ZC:有时修改了 ui文件的某些内容后,需要重启Qt才能生效(如下面的"<extends>QOpenGLWidget</extends>")! ! ...

 <?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">  <!-- ZC: 主界面窗口 -->
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>599</width>
<height>359</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property> <widget class="QWidget" name="centralWidget">  <!-- ZC: 主界面上的centralWidget,它的布局为QGridLayout -->
<layout class="QGridLayout" name="gridLayout"> <item row="1" column="0"> <!-- ZC: 第1行第0列 -->
<layout class="QGridLayout" name="gridLayout_2"> <!-- ZC: 这里将唯一的元件openGLWidget放在栅格布局中它会填充整个栅格布局 -->
<item row="0" column="0">
<widget class="WndGL_Z" name="openGLWidget" native="true"/>
</item>
</layout>
</item> <item row="0" column="0"> <!-- ZC: 第0行第0列 -->
<widget class="QWidget" name="widget" native="true">
<property name="minimumSize">
<size>
<width>0</width>
<height>100</height>  <!-- ZC: 这里设置 最小高度值 -->
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>100</height>  <!-- ZC: 这里设置 最大高度值 -->
</size>
</property> <widget class="QPushButton" name="pushButton">
<property name="geometry">
<rect>
<x>10</x>
<y>10</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>PushButton</string>
</property>
</widget> </widget>
</item> <!-- ZC: 第0行第0列 结束 --> </layout> <!-- ZC: "gridLayout"结束 -->
</widget> <!-- ZC: "centralWidget"结束 --> </widget> <!-- ZC: "MainWindow"结束 --> <layoutdefault spacing="6" margin="11"/>
<customwidgets>
<customwidget>
<class>WndGL_Z</class>
<extends>QOpenGLWidget</extends> <!-- ZC: 注意这里,不能是QWidget(这个就是普通的控件了) -->
<header>wndgl_z.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

3、

4、

5、

Qt532界面.ZC测试的更多相关文章

  1. Jmeter:图形界面压力测试工具

    Jmeter是一款强大的图形界面压力测试工具,完全用Java写成,关于Jmeter的介绍,网上其实有不少的文章,我原本是不想再重复写类似文章的,但我发现有些很关键性的,在我们测试中一定会用到的一些设置 ...

  2. 【转】Jmeter:图形界面压力测试工具

    Jmeter是一款强大的图形界面压力测试工具,完全用Java写成,关于Jmeter的介绍,网上其实有不少的文章,我原本是不想再重复写类似文章的,但我发现有些很关键性的,在我们测试中一定会用到的一些设置 ...

  3. 使用QTP对Flight的登录界面进行测试

    一.测试用例设计 现在使用QTP对案例程序进行测试, 设计测试用例的要求为: 用户名长度大于等于6个字符 必须为字母[o-z,O-Z]和数字[0-9]组成 不能为空,空格或者特殊字符 正确的密码为:M ...

  4. 【ELK】Centos7 安装 ELK 7.6.2 和 UI 管理界面以及测试例子

    1. 初始化环境 1.0 初始化环境官网参考 https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config ...

  5. 【工业串口和网络软件通讯平台(SuperIO)教程】五.二次开发图形显示界面

    SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1    图形显示接口的作用 用于显示采集终端设备的数据,可以把不同类型设备的数据以多种形式集成显示在不 ...

  6. Web测试的常用测试用例与知识

    1. Web测试中关于登录的测试 2. 搜索功能测试用例设计 3. 翻页功能测试用例 4. 输入框的测试 5. Web测试的常用的检查点 6. 用户及权限管理功能常规测试方法 7. Web测试之兼容性 ...

  7. Android开源测试框架学习

    近期因工作需要,分析了一些Android的测试框架,在这也分享下整理完的资料. Android测试大致分三大块: 代码层测试 用户操作模拟,功能测试 安装部署及稳定性测试 代码层测试 对于一般java ...

  8. 手机客户端UI测试常见的测试点

    1.各种分辨率下,显示正常.现市场上主流的塞班V3系统手机为240*320.320*240.WM系统主要为240*320.320*480.Android系统主要为320*480,Iphone系统为32 ...

  9. web测试常用的用例及知识

      1.      Web测试中关于登录的测试... 1 2.      搜索功能测试用例设计... 2 3.      翻页功能测试用例... 3 4.      输入框的测试... 5 5.    ...

随机推荐

  1. Python进阶【第九篇】装饰器

    什么是装饰器 装饰器本身就是函数,并且为其他函数添加附加功能 装饰器的原则:1.不修改被装饰对象的源代码  2.不修改被装饰对象的调用方式装饰器=高阶函数+函数嵌套+闭包 # res=timmer(t ...

  2. 每日linux命令学习-grep模式检索

    grep模式检索指令包括grep,egrep,和fgrep,.Linux系统使用正则表达式优化文本检索,所以在此,笔者首先学习了一下正则表达式. 1. 正则表达式 正则表达式使用被称为元字符(Meta ...

  3. K8S学习笔记之修改K8S的api-server证书

    K8S的api-server证书包含很多IP和域名,有时候后期才发现证书内有错误,需要重新生成该证书. 修改server-csr.json,修改后基于原来的ca证书重新生成server.perm  s ...

  4. Prometheus监控学习笔记之在 HTTP API 中使用 PromQL

    0x00 概述 Prometheus 当前稳定的 HTTP API 可以通过 /api/v1 访问. 0x01 API 响应格式 Prometheus API 使用了 JSON 格式的响应内容. 当 ...

  5. Idea 破解教程 (2018.11-29最新版)

    一.下载安装idea,这里不做赘述.官网-https://www.jetbrains.com/idea/ 二.安装完idea后,需要激活使用.这里需要先下载个工具包 ,下载网址http://idea. ...

  6. oracle_sqlplus命令行乱码问题解决

    在linux以及unix中,sqlplus的上下左右.回退无法使用,会出现乱码情况. 而rlwrap这个软件就是用来解决这个的. 首先下载rlwrap包:https://linux.linuxidc. ...

  7. 装了as之后提示NO JVM installation found.....

    如图. 解决:在AS安装目录下,找到对应的程序[jdk是多少位就打开多少位的]

  8. python ---24 正则表达式 re模块

    一.正则表达式 1.字符组 ① [abc] 匹配a或b或c ②  [a-z] 匹配a到z之间的所有字⺟ [0-9]匹配所有阿拉伯数字 2.元字符 3.量词 4.重要搭配 ①  .*? ②  .*?x  ...

  9. Python3 tkinter基础 Listbox Button 点击按钮删除选中的单个元素

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  10. How to Install LibreOffice 6.0 on Ubuntu 16.04 LTS +

    1. Add the LibreOffice 6.0 PPA The LibreOffice Fresh PPA is maintained by LibreOffice. It provides l ...