PyQt-入门基础(创建窗口、文本和图片、输入框)

一、Pyqt窗口程序

1. 第一个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())

执行代码,就会显示PyQt窗口:

2. 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应用的工具

3. 窗口标题和图标

应用程序图标是一个小的图像,通常在标题栏的左上角显示。

from PyQt5.QtWidgets import QApplication,QWidget
from PyQt5.QtGui import QIcon
import sys

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

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

# 设置窗口标题
w.setWindowTitle('黑马窗口')
# 设置窗口尺寸
w.resize(400, 300)
# 设置图标
w.setWindowIcon(QIcon('qq.png'))

w.setToolTip('这个一个气泡提示')

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

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

运行程序:

二、PyQt文本和图片

1. 文本控件

文本控件是QLabel

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())

运行程序:

2. 图片控件

QLabel 控件既可以显示文本,也可以显示图片

from PyQt5.QtWidgets import QWidget, QApplication, QLabel
from PyQt5.QtGui import QPixmap
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())

运行程序:

三、PyQt输入框

1. 单行文本输入框

QLineEdit控件可以输入单行文本

from PyQt5.QtWidgets import QApplication, QWidget, QLineEdit, QVBoxLayout
from PyQt5.QtCore import *
from PyQt5.QtGui import QIcon
import sys


def init_widget(w: QWidget):
    # 修改窗口标题
    w.setWindowTitle('单行输入框')
    # 设置窗口大小
    w.resize(480, 320)

    layout = QVBoxLayout()
    """------------------ 展示单行输入框 ------------------"""
    edit = QLineEdit()
    # 设置输入框提示
    edit.setPlaceholderText('请输入用户名')
    # 设置文本
    edit.setText('张三')
    # 获取单选框的文字
    text = edit.text()
    print(text)
    # 设置输入框最大字符数
    edit.setMaxLength(10)
    layout.addWidget(edit)

    edit3 = QLineEdit("Password")
    edit3.setPlaceholderText('请输入密码')
    edit3.setEchoMode(QLineEdit.Password)
    layout.addWidget(edit3)

    w.setLayout(layout)


if __name__ == '__main__':
    # 1.创建应用程序
    app = QApplication(sys.argv)
    # 2.创建窗口
    w = QWidget()
    init_widget(w)
    # 3.显示窗口
    w.show()
    # 4.等待窗口停止
    sys.exit(app.exec())

运行程序:

QLineEdit的方法

方法

说明

setEchoMode()

QLineEdit.Normal正常显示所输入的字符,默认选项

QLineEdit.NoEcho不显示任何输入的字符,常用于密码类型的输入,且其密码长度需要保密时

QLineEdit.Password显示与平台相关的密码掩码字符,而不是实际输入的字符

QLineEdit.PasswordEchoOnEdit在编辑时显示字符,负责显示密码类型的输入

setPlaceholderText()

设置文本框浮显文字

setText()

设置文本框内容

setMaxLength()

设置文本框所允许输入的最大字符数

2. 多行文本输入框

QTextEdit控件用来输入多行文本

from PyQt5.QtWidgets import QApplication,QWidget,QTextEdit
from PyQt5.QtCore import *
from PyQt5.QtGui import QIcon
import sys

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

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


# 修改窗口标题
w.setWindowTitle('多行输入框')
"""------------------ 多行输入框 ------------------"""
edit = QTextEdit()

# 设置提示内容
edit.setPlaceholderText('请输入发表的内容')
# 设置文本内容
edit.setPlainText('武汉疫情')
# 获取输入的内容
print(edit.toPlainText())
edit.clear()

# 显示多行输入框
edit.setParent(w)

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

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

运行程序:

QTextEdit的方法

方法

说明

setPlainText()

设置多行文本框的文本内容

toPlainText()

返回多行文本框的文本内容

setHtml()

设置多行文本框的内容为HTML文档

toHtml()

返回多行文本框的HTML文档内容

clear()

清空多行文本框的内容

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值