面向过程版

# 0. 导入需要的包和模块
from PyQt5.Qt import * # 包含了我们常用的QT中的一些类
import sys # 一个内置的模块,系统相关操作 # 代码执行的时候,可以接收命令行的参数 sys.argv
# args = sys.argv # python命令运行时的参数,一般第0个是文件名,后面是其他参数
# print(args) # 1. 创建一个应用程序对象,
# 一个PyQt程序都需要一个应用程序对象
# * 它包含主事件循环,在其中来自窗口系统和其他资源的所有事件被处理和调度
# * 它也处理应用程序的初始化和结束,并且提供对话管理
# * 它也处理绝大多数系统范围和应用程序范围的设置
app = QApplication(sys.argv)
# app.arguments() # 可以获取创建时传入的参数
# 也可以通过 qApp.arguments() 来获取 # 2. 控件的操作
# 创建控件,控件的设置,事件的处理等
# 创建控件
# 当我们创建一个控件之后,如果说,这个控件没有父控件,则把它当做顶层控件(窗口)
# 系统会自动地给窗口添加一些装饰(例如标题栏),窗口控件具备一些特征
# 凡是顶层控件,都可以设置一些有关窗口的属性
# 控件也可以作为一个容器(承载其他控件)
# 如果一个控件有父控件,则父控件展示之后,子控件一般也会展示
#window = QWidget()
window = QLabel()
# 设置控件
window.setText("Hello World")
window.setWindowTitle("titlexxxxxxx")
# 展示控件
# 刚创建好的控件默认不会被展示(如果这个控件没有什么父控件),需要手动show
window.show() # 3. 应用程序的执行,进入到消息循环 # 退出码,一般正常是0
sys.exit(app.exec_())
# app.exec_() 让整个程序开始执行, 进入消息循环(无限循环),不要停止
# 消息循环检测整个程序所接收到的用户的交互信息和其他信息

PyQt5程序基本结构分析的更多相关文章

  1. [python学习笔记] pyinstaller打包pyqt5程序无法运行

    问题 pyinstaller打包的pyqt5程序在部分电脑上会失败.用户截图提示下边错误日志 无法定位程序输入点 ucrtbase.terminate 于动态链接库 api-ms-win-crt-ru ...

  2. Python入门学习——PyQt5程序基本结构

    在学习python GUI部分时,一开始看书有点懵,看不懂框架,以下是个人学习所得(参考了别人的视频讲解),错误之处,望大家指教 #0.导入需要的包和模块from PyQt5.Qt import * ...

  3. 利用Qt中的ui文件生成PyQt5程序,自定义槽函数

    1.在Qt Creator4.8.0上面设计如上.ui文件 2.点击上方图标,可以建立信号-槽连接,button_click()为自定义槽函数 3.设计目的:点击clear按钮,可消除上方文本框中的内 ...

  4. C语言程序的结构分析

    一个C语言源程序可以由一个或多个源文件组成. 每个源文件可由一个或多个函数组成. 一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数. 源程序中可以有预处理命令(include ...

  5. PyQt5系列教程(三)用py2exe进行程序打包

    软硬件环境 Windows 10 Python 3.4.2 PyQt5 Py2exe 前言 在我们开发了完整的PyQt5项目后,一般都会将其打包成exe文件,方便其他人使用.今天我们就用Py2exe这 ...

  6. 限制pyqt5应用程序 只允许打开一次

    起因 pyqt5程序创建桌面快捷方式后,多次单击图标 会打开多个UI界面,这种情况肯定是不允许的! 解决 if __name__ == '__main__': try: app = QtWidgets ...

  7. 使用py2exe打包你的py程序

    软件环境:python3.3.4 + PyQt5 使用py2exe打包写好的py文件,过程如下: 在你要打包的代码文件(比如sample.py)的同文件夹建立一个python代码文件(比如setup. ...

  8. Python3使用PyQt5制作简单的画板/手写板

    0.目录 1.前言 2.简单的画板1.0 在定点和移动中的鼠标所在处画一条线 3.简单的画板2.0 在定点和移动中的鼠标所在处画一条线 并将画过的线都保留在窗体上 4.简单的画板3.0 将按住鼠标后移 ...

  9. 微信小程序入门二

    # 微信小程序开发实战 ## 准备 ### 课程概要 - 微信小程序基本介绍- 开发环境及工具的安装配置- 微信小程序的设计规范- 微信小程序基本结构分析- WXML和WXSS语法规范- 微信小程序A ...

随机推荐

  1. Java-类的生命周期浅析

    简述:Java虚拟机为Java程序提供运行时环境,其中一项重要的任务就是管理类和对象的生命周期.类的生命周期.类的生命周期从类被加载.连接和初始化开始,到类被卸载结束.当类处于生命周期中时,它的二级制 ...

  2. js获取当前时间:yyyy-MM-dd HH:MM:SS

    var nowDate = new Date();var year = nowDate.getFullYear(); < ? ; ? " + nowDate.getDate() : n ...

  3. JQuery/JS插件 jsTree加载树,普通加载,点一级加载一级

    前端: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <tit ...

  4. python下matplotlib、numpy、pandas联合作图逐步深入分析

    1.代码1: from pandas import Series,DataFrame from numpy.random import randn import numpy as np import ...

  5. Hive文件与记录格式

    1. Hive文件与记录格式 Create table 有多种用法,例如STORED AS SEQUENCEFILE, ROW FORMAT DELIMITED, SERDE, INPUTFORMAT ...

  6. EAC3 mantissa quantization(VQ & GAQ)

    EAC3基于hebap来决定mantissa的quantizer. hebap如下: mantissa 使用VQ(vector quantization) 和GAQ(gain adaptive qua ...

  7. 【正确使用vim编辑器的姿势】

    "vi:可视化接口(Visual Interface) vim:是vi的增强版(vi iMprove) vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中 ...

  8. Java引擎

    import java.io.FileNotFoundException; import java.io.FileReader; import java.util.List; import javax ...

  9. 【做题笔记】洛谷P1002过河卒

    虽说是 dp 入门题,但还是有很多细节需要注意 如果设 \(f_{x,y}\) 为目标地点为 \((x,y)\) 时走的种数,那么答案就是 \(f_{n,m}\) 在不考虑那只讨厌的马的情况下,对于任 ...

  10. JVM探秘:VisualVM监控远程Java进程

    VisualVM在Java 8中是JDK自带的一个图形化工具,项目主页 VisualVM,在后续版本中可能会从JDK移除. VisualVM可以监控Java进程的CPU与内存占用情况,可以监控Java ...