Qt Designer简介-程序员宅基地

技术标签: python  qt  Python Qt图形界面编程  

来源

http://www.python3.vip/tut/py/gui/qt_03/

回顾

在前面的程序中,我们学习了怎么样用程序来把QT程序界面的 一个个窗口、控件创建出来

问题分析

QT程序界面的 一个个窗口、控件,就是像上面那样用相应的代码创建出来的。

但是,把你的脑海里的界面,用代码直接写出来,是有些困难的。

很多时候,运行时呈现的样子,不是我们要的。我们经常还要修改代码调整界面上控件的位置,再运行预览。反复多次这样操作。

可是这样,真的…太麻烦了。

其实,我们可以用QT界面生成器 Qt Designer(界面设计师) ,拖拖拽拽就可以直观的创建出程序大体的界面。

Qt Designer(界面设计师)

怎么运行这个工具呢?

pyside2

它的路径是

D:\Python\Installation\Scripts\pyside2-designer.exe

在这里插入图片描述

pyqt5

它的路径是

D:\Python\Installation\Scripts\pyqt5designer.exe

在这里插入图片描述

初步运行pyside2-designer.exe

在这里插入图片描述
然后就出现了下面的这个界面
在这里插入图片描述

因为,我现在使用的操作系统是中文的操作系统,所以这个程序是已经汉化过了的。

怎么样使用Qt Designer来创建一个程序的界面

初始化一个图形界面

首先,你需要创建一个顶层的
其实,我们的程序在启动的时候就会新建一个
启动的时候,会弹出一个【新建窗体】的对话框
在这里插入图片描述
我们可以在这里面选择顶层的窗口是一个什么类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

刚才我们选择是【Main Window】,所以这个界面是有一个菜单栏的
现在我们的这个程序的界面是不需要菜单栏的,所以还是重建一个

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这种情况下就没有菜单栏这个位置了

在这里插入图片描述

编辑框

在这里插入图片描述
在这里插入图片描述
选中,拖动即可将这个控件移到我们的图形界面上来

在这里插入图片描述

我们可以对这个纯文本编辑框进行很多操作:
选中纯文本编辑框,改变它的大小、位置
右键还有更多的选项
在这里插入图片描述

按钮

在这里插入图片描述

1.0版

这样的话,我们就是将界面的大体的形状定义出来了
在这里插入图片描述

设置控件的属性

按钮

1.按钮的名字
选中按钮控件,双击即可修改按钮的名字
在这里插入图片描述

编辑框

1.编辑框的输入提示
在这里插入图片描述
这个输入提示其实是属于Placeholder的一种文本
在这里插入图片描述
首先,我们应该如何设置控件的属性呢?
在这里插入图片描述

那我们应该如何设置它的一个和Placeholder有关的属性呢?

在这里插入图片描述

设置控件对象的名字

也就是我们在实例化对象时对创建对象的命名
在这里插入图片描述

因为我们的程序在访问里面的控件时,是根据对象的名字来访问的
在这里插入图片描述
在这里插入图片描述

这样修改之后,我们的程序就可以通过textEditbutton来访问到这个控件

标题栏

这里是引用
在这里插入图片描述

我们应该如何修改程序的标题栏呢?

在这里插入图片描述

预览

虽然已经大致创建好了,但是还是和我们实际运行时是有一些差别的,比如说

这里是引用

【窗体】【预览】(快捷键【Ctrl+R】)
然后就可以看见实际运行时的效果了

在这里插入图片描述

保存

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这样就保存成功了
在这里插入图片描述

建议

  • 新建一个文件夹,将所有的ui界面文件都保存在一起
  • 文件名的话,最好是起到什么功能的就起什么样的名字

在这里插入图片描述

文件stats.ui的具体介绍

以【记事本】方式打开stats.ui文件
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>Form</class>
 <widget class="QWidget" name="Form">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>747</width>
    <height>594</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>薪资统计</string>
  </property>
  <widget class="QPlainTextEdit" name="textEdit">
   <property name="geometry">
    <rect>
     <x>40</x>
     <y>50</y>
     <width>641</width>
     <height>381</height>
    </rect>
   </property>
   <property name="placeholderText">
    <string>请输入薪资信息</string>
   </property>
  </widget>
  <widget class="QPushButton" name="button">
   <property name="geometry">
    <rect>
     <x>310</x>
     <y>480</y>
     <width>93</width>
     <height>28</height>
    </rect>
   </property>
   <property name="text">
    <string>统计</string>
   </property>
  </widget>
 </widget>
 <resources/>
 <connections/>
</ui>

其实它就是xml格式的文件

它把你的界面上的元素全部定义在文件中了

它不是将你的界面定义存成一张图片,而是保存为一个xml的定义文件中

在下一次打开Qt Designer的时候,我们可以打开我们设计并保存的ui文件

打开我们设计并保存的ui文件

在这里插入图片描述
选择要打开文件的路径和要打开的文件
在这里插入图片描述
这就是ui文件打开之后的结果
在这里插入图片描述

完结

这个就是通过 Qt Designer 来设计一个程序的界面

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yuhui_2000/article/details/109627651

智能推荐

freeRTOS学习 — 事件标志组,很好用哦!!!_freertos里成功标志位用什么好-程序员宅基地

文章浏览阅读1.4k次。freeRTOS中还有一种可以用于任务之间同步的手段 — 事件标志组。_freertos里成功标志位用什么好

cad命令栏怎么调出来_中望CAD菜单栏和功能栏都消失怎么办-程序员宅基地

文章浏览阅读4.9k次。在我们使用中望CAD的时候,有时候会发现菜单栏和功能栏都消失不见了,这时候我们很多操作习惯可能就可能无法实现,当遇到这个问题我们该怎么办了?首先,我使用中望CAD安装包进行重新安装,但是还是没有作用,这时候可能确认的是并非软件问题,而是我们操作中出现的问题。第二,我们可以选择的方法有两种,第一就是用命令行输入命令去解决,第二就是使用我们常用的鼠标去进行操作。(1)用命令行的方法:1、在中望CAD..._中望cad命令栏不见了

xmysql:可为MySql生成REST API的神奇命令_mysql x devapi-程序员宅基地

文章浏览阅读1.5w次,点赞2次,收藏14次。原文:xmysql: one command to generate REST APIs for any MySql database 作者:o1lab 翻译:Vincent为什么用这个命令?为MySql数据库快速生成REST API,而且还不遵循诸如rails、django等框架的约定,这可能是一种不太受欢迎的冒险行为。 但是也正因为如此。该命令的功能都是由node packa_mysql x devapi

【java web毕业设计】 基于opencv与SVM的车牌识别系统_车牌识别 毕业设计 web-程序员宅基地

文章浏览阅读68次。基于opencv与SVM的车牌识别系统用python3+opencv3做的中国车牌识别,包括算法和客户端界面,只有2个文件,surface.py是界面代码,predict.py是算法代码,界面不是重点所以用tkinter写得很简单。python3.7.3opencv4.0.0.21numpy1.16.2TkinterPIL5.4.1算法思想来自于网上资源,先使用图像边缘和车牌颜色定位车牌,再识别字符。由于训练样本有限,测试时会发现,车牌字符识别,可能存在误差,尤其是第一个中文字符出现的误差概率较大_车牌识别 毕业设计 web

计算机系统要素-从零开始构建现代计算机-答案_计算机系统要素:从零开始构建现-程序员宅基地

文章浏览阅读1.6k次,点赞3次,收藏16次。关于这本书的好处 豆瓣上已经有一堆人说了 我就不重复了 直接附上项目答案练习题答案全套工具这本书的PDF可以百度自己下载内容简介本书通过展现简单但功能强大的计算机系统之构建过程,为读者呈现了一幅完整、严格的计算机应用科学大图景。本书作者认为,理解计算机工作原理的最好方法就是亲自动手,从零开始构建计算机系统。通过12个章节和项目来引领读者从头开始,本书逐步地构建一个基本的硬件平台和现代..._计算机系统要素:从零开始构建现

VMware虚拟机上Ubuntu与Windows XP文件共享_vmmuyub-程序员宅基地

文章浏览阅读3.4k次。现在使用虚拟机的人越来越多,它的确给我们带来了很大的方便。但是其中总会有一些问题困扰着我们,今天我就给大家讲一讲我的一点小小的经验。关于VMware虚拟机上Ubuntu与Windows XP文件共享的问题! 我的情况:本人电脑系统为Windows XP,在该系统上装了VMware 6.0虚拟机,并在虚拟机上安装了Ubuntu 9.04。最终实现了两系统的文件共享!(其他系统大同小略) 进入正题,以下为详细步骤: 一. 首先确保你的虚拟系统正确安装了VMware-Tools,并_vmmuyub

随便推点

webstorm 扩大内存_webstorm设置内存-程序员宅基地

文章浏览阅读1.1k次。个人感知-----vs/ws对于vscode 总是很多东西操作不熟练 还是喜欢用wenstorm ,可视化能力简直不要太好!!!但是不得不承认ws真的巨慢巨卡,尤其是公司电脑配置不高的情况下 更是恼火5分钟改个bug 提代码用了半小时。面对测试及其他人的冷眼斜视,我很无奈!!!更改一下内存设置,默认值为2M多一点 ,也是太慢好不好!所以玩命加!!!只能说还有是有点点效果的 操作切换分支时没有那么卡 持续找解决办法。。。。。..._webstorm设置内存

python docx官网_Python操作docx文档-程序员宅基地

文章浏览阅读1.2k次。最近学 Python 的一部分原因是我想用Python的docx包来写一个自动化生成word报告的脚本(需求产生动力),本来是打算用rmarkdown来出报告的,其对网页版支持比较好(样式也好看),对PDF支持也不错(毕竟可以依靠latex),但是对于word的可操作性并是不很好(可能使用的比较粗糙);最后听人说Python的docx包不错,专门对于window下的word进行操作,所以尝试下对于..._python word处理 官网

Un*、Id分别突变情况下单闭环直流调速系统仿真-程序员宅基地

文章浏览阅读1.7k次,点赞2次,收藏9次。P、PI调节器在直流电机调速上的MATLAB SIMULINK仿真分析

Kafka ACL(SASL/SCRAM-SHA-256)动态权限管理【windows】-程序员宅基地

文章浏览阅读2.1k次。Window系统下配置Kafka ACL SASL/SCRAM-SHA-256 模式动态权限管理_scram-sha-256

cad字体修改方案分享-缺少SHX字体、替换字体_cad缺少字体如何用万能字体替换-程序员宅基地

文章浏览阅读1.3w次,点赞3次,收藏13次。本文提供了cad缺少SHX字体时的解决方案,对于饱受每次打开都被提醒更换字体的兄弟有较大帮助。_cad缺少字体如何用万能字体替换

干货分享:在Windows下使用Visual Studio搭建C语言开发环境_visual studio c语言-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏29次。前言:本文将教大家如何使用 VIsual Studio Code 搭建 C 语言开发环境,包括使用 VS Code 如何编译和调试 C 语言程序,需要 用到的工具有 Visual Studio Code 、MinGw-w64 。1. 安装 C/C++ 插件C/C++ 是由 Microsoft 发布的支持 C/C++ 智能提示和调试等功能的插件,安装步骤如下:使用快捷键Ctrl + Shift + X呼出扩展面板在搜索框中输入:C/C++再安装由Microsoft提供的名为C/C++插._visual studio c语言

推荐文章

热门文章

相关标签