上位机开发____PyQt基础语法1

这篇文章默认读者已熟悉python的语法并熟练使用.所以这里不对python的基础语法进行过多赘述.只针对PyQt的常用指令进行描述,使初学者快速入门.

一.PyQt常用模块

我们在使用PyQt进行上位机开发时,我们首先要认识它的常用模块,需要某个功能,导入相应的模块,然后再引用模块中的函数进行想要功能的开发.即使现在有AI的帮助,但是也是建立在我们认识代码的前提下进行的.所以熟悉PyQt的常用模块是十分必要的.

PyQt中有非常多的功能模块,开发中最常用的功能模块主要有三个:

  • QtCore:包含了核心的非GUI的功能。主要和时间、文件与文件夹、各种数据、流、URLs、mime类文件、进程与线程一起使用
  • QtGui:包含了窗口系统、事件处理、2D图像、基本绘画、字体和文字类
  • QtWidgets:包含了一些列创建桌面应用的UI元素

 PyQt的其它模块

  • QtMultimedia:负责处理多媒体的内容和调用摄像头
  • QtBluetooth:负责查找和连接蓝牙
  • QtNetwork:负责网络编程
  • QtPositioning:负责定位相关
  • Enginio:包含了通过客户端进入和管理Qt Cloud
  • QtWebSockets:实现了WebSocket协议
  • QtWebKit:包含了一个基WebKit2的web浏览器QtWebKitWidgets:包含了基于QtWidgets的WebKit1的类
  • QtXml:负责处理xm
  • QtSvg:负责显示SVG内容
  • QtSql:提供了处理数据库的工具。
  • QtTest:提供了测试PyQt5应用的工具

二.PyQt创建窗口

from PyQt5.QtWidgets import QApplication,QWidget
import sys

# 1.创建应用程序
app = QApplication(sys.argv)

# 2.创建窗口
w = QWidget()

# 3.显示窗口
w.show()

# 4.等待窗口停止
sys.exit(app.exec())

 导入模块import 后面的QApplication,QWidget是QtWidgets模块中的控件,分别的功能是创建应用程序和创建窗口.这只是其中的两个控件,我们在使用时可以直接用*代替,表示全部引用.我们就不必一个一个引用.代码如下

from PyQt5.QtWidgets import *

上面这段代码,已经已经创建了一个最基础的空白窗口.需要注意的是:当我们在其中开发功能时,大部分时间只需关注 2.创建窗口_和3.显示窗口_下面的代码即可,大部分功能都是在这两部分中实现的.这就是我们上面代码创建的空白窗口.

三. 窗口标题和图标

应用程序图标是一个小的图像,通常在标题栏的左上角显示。我们在编写图标时,就需要导入QtGui这个模块.

#导入窗口模块
from PyQt5.QtWidgets import *
#导入图形操作模块
from PyQt5.QtGui import *
import sys
#创建应用程序
app = QApplication(sys.argv)
#创建窗口
window = QWidget()
#创建窗口标题
w.setWindowTitle("小崔同学的窗口")
#设置窗口图标
w.setWindowIcon(QIcon("img/qq.png"))
#设置光标提示
w.setToolTip("这是一个标签")
#创建窗口尺寸
w.resize(500,500)
#显示窗口
w.show()
#等待窗口停止
sys.exit(app.exec_())

在PyQt中设置窗口图标时,要先在窗口文件相同的目录下保存想要显示的图标图片.函数括号内放的是:  文件上级目录/文件名

支持的图片格式主要包括但不限于 .png, .ico, .jpg, 或 .svg 等。最常用的格式是 .png.ico,因为它们能很好地支持透明度,这对于图标来说尤为重要。 

四.文本和图片

文本控件QLabel包含在窗口模块中,读者在不清楚所需控件时可以利用AI工具查询,由于PyQt所包含的控件过多,所以博主在引用时也经常要查询.

文字

from PyQt5.QtWidgets import QWidget, QApplication, QLabel
import sys

# 1.创建应用程序
app = QApplication(sys.argv)

# 2.创建窗口
w = QWidget()

# 修改窗口标题
w.setWindowTitle('文本展示')

# -----------------------------------------------start

label = QLabel()
label.setText('第一个文本')
# 将文本控件添加到窗口中
label.setParent(w)

# -----------------------------------------------end

# 3.显示窗口
w.show()

# 4.等待窗口停止
sys.exit(app.exec())

我们这里使用的文本和图片,可以把它看做是用提示的文字或者背景图片.

运行程序:

图片:

from PyQt5.QtWidgets *
from PyQt5.QtGui *
import sys


def init_widget(w: QWidget):
    # 修改窗口标题
    w.setWindowTitle('图片展示')
    #------------------ 展示图片 ------------------
    label = QLabel()
    pixmap = QPixmap('img.png')
    label.setPixmap(pixmap)
    # 显示到窗口中
    label.setParent(w)
    # 改变窗口大小
    w.resize(pixmap.width(), pixmap.height())


if __name__ == '__main__':
    # 1.创建应用程序
    app = QApplication(sys.argv)

    # 2.创建窗口
    w = QWidget()
    init_widget(w)

    # 3.显示窗口
    w.show()

    # 4.等待窗口停止
    sys.exit(app.exec())

 我们这里的图片是存在bug的,在拉动控制窗口大小时,图片的大小不能随着窗口同时放大或缩小.我们在后面的推文中会教大家解决的办法.今天只是做一个对PyQt的基础功能的应用

运行程序

由于PyQt的基础功能比较多,我们在后续的博客中会继续为大家进行详解!

  • 23
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值