Qt开发-QT Widgets
前言
Qt Quick和Qt Widgets这两种技术,官方是强推Qt Quick的。
注意:
Qt Widgets使用Python结合PySide2开发的时候,窗口的缩放,内部的组件不会随之缩放,用C++开发使用同样的UI文件就没有问题,不知道是PySide2的BUG还是哪的问题。 所以目前我就不太建议用Qt Widgets形式开发,建议Qt Quick.
常见属性
结合控件的SizePolicy属性,来控制布局管理中的控件的尺寸自适应方式。一些常用值的含义:
- Fixed:控件不能放大或者缩小,控件的大小就是它的sizeHint。
- Minimum:控件的sizeHint为控件的最小尺寸。控件不能小于这个sizeHint,但是可以放大。
- Maximum:控件的sizeHint为控件的最大尺寸,控件不能放大,但是可以缩小到它的最小的允许尺寸。
- Preferred:控件的sizeHint是它的sizeHint,但是可以放大或者缩小。
- Expandint:控件可以自行增大或者缩小。
注:sizeHint(布局管理中的控件默认尺寸,如果控件不在布局管理中就为无效的值)
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓
加载UI的两种方式
方式1
转成代码后加载
UI文件转Python代码
pyside2-uic form.ui -o ui_form.py
显示
import sys
from PySide2.QtWidgets import QApplication, QMainWindow
from ui_form import Ui_Widgetclass MainWindow(QMainWindow):def __init__(self):super(MainWindow, self).__init__()self.ui = Ui_Widget()self.ui.setupUi(self)if __name__ == "__main__":app = QApplication(sys.argv)window = MainWindow()window.show()sys.exit(app.exec_())
方式2
直接加载UI文件
import os
from pathlib import Path
import sysfrom PySide2.QtWidgets import QApplication, QWidget
from PySide2.QtCore import QFile
from PySide2.QtUiTools import QUiLoaderclass Widget(QWidget):def __init__(self):super(Widget, self).__init__()self.load_ui()def load_ui(self):loader = QUiLoader()path = os.fspath(Path(__file__).resolve().parent / "form.ui")ui_file = QFile(path)ui_file.open(QFile.ReadOnly)loader.load(ui_file, self)ui_file.close()if __name__ == "__main__":app = QApplication([])widget = Widget()widget.show()sys.exit(app.exec_())
窗口设置
去掉顶部按钮
from PySide2.QtCore import QFile, Qtself.setWindowFlags(Qt.FramelessWindowHint)
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓
Qt开发-QT Widgets相关推荐
- Qt开发-QT Quick
前言 QT Quick和Qt widgets这两种技术,官方是强推QT Quick的. QT Quick中布局一般有如下四种方式, 绝对坐标:x.y.z.width.height.top.left 锚 ...
- Qt开发Activex笔记(一):环境搭建、基础开发流程和演示Demo
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/113773009 长期持续带来更多项目与技术分 ...
- 二选一的时候到了,Qt Widgets 还是 Qt Quick ? 致Qt开发伙伴
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.Qt QWidgets 和 Qt Quick 各自有什么特性.特点? 1.Qt QWidgets 2.Qt Qui ...
- xmake 新增对 Qt 编译环境支持,用自己最喜爱的编辑器去开发 Qt 程序
最近给xmake新增了对 Qt SDK 环境的支持,现在我们完全可以脱离 Qt Creator 进行 Qt 应用程序的开发,甚至配合 vscode/idea/sublime/vim 等编辑器+xmak ...
- CMake结合Visual Studio中开发Qt应用程序注意事项
Qt工程管理 个人比较偏爱于使用CMake来管理C++工程,因为只要编写一个CMakeLists.txt文件,就可以在Windows和Mac上生成各自的IDE工程.在Windows上, CMake自然 ...
- Android平台Qt开发入门教程
很多人会问,Android平台可以不使用Java开发应用程序?? 我做Android平台native开发之前,也有这么想过,但是我又想,底层系统全是c/c++代码,用c/c++开发Android平台程 ...
- QT Creator应用程序开发——QT程序设计基本知识
目录 一.Application模板介绍 二.选择类信息 三.Qt Widgets Application项目示例 (一).pro 项目管理文件 (二).h 头文件 (三).cpp 源文件 (四).u ...
- C++与Qt开发人机象棋(第二部分)
C++与Qt开发人机象棋(第二部分) 项目目录 文件名->(包含)类名1->(包含)类名2 ChessBy ChessBy.pro Headers Board.h – – – Source ...
- mac os qt项目编译_【Qt开发】第一个Qt程序Hello World!
一:说在前头 我的第一份工作是做生产工具,当时用的MFC,IDE是VC6.0,现在想想真是古董级别,10年至今,微软也一直没有对MFC进行升级,冥冥中感觉微软自己都放弃MFC了,市场上貌似MFC的岗位 ...
最新文章
- JVM是怎么工作的?
- Redis应用案例,查找某个值的范围(转)
- scikit-learn学习笔记(三)Generalized Linear Models ( 广义线性模型 )
- c语言全局变量和局部变量问题汇总
- 如何挑选家用交换机 交换机选购攻略分享
- STM32f103 —— timer
- 玩客云pc端_玩客云电脑客户端-玩客云pc端下载 v1.4.5.112官方版--pc6下载站
- Unity 使用BmFont制作艺术字体
- JavaWeb实现的超市收银、基于SSM+mysql的 vue便利店收银管理系统实现【文档】【代码过程】
- 关于STM32Flash详解
- 手工清除Windows服务器上的Steam挖矿病毒:HackTool/CoinMiner.a及Trojan/Miner.ac
- 比较程序查询方式、程序中断方式、DMA方式对CPU工作效率的影响
- RabbitMQ(二) | 消息可靠性(消息确认机制、消息持久化、消息重试机制)
- 适合学生党上手测试的免费云服务器推荐
- c语言字符 ul,c语言 #define 中的UL
- php 将汉字转换成拼音,利用PHP怎么将汉字转换为拼音
- IOS 关闭键盘 退出键盘 的5种方式
- [Recovery] 小米 MIX2s TWRP recovery下载
- MIGO 抬头屏幕自定义字段增强示例
- qq群引流靠谱吗?为什么选择QQ引流?QQ引流好吗?