PyQt5的QtWidgets模块介绍

目录

前言

一、PyQt5的QtWidgets介绍

二、主要类的用法

1.QApplication

2.QMainWindow

3.QWidget

4.QLabel

5.QPushButton

6.QLineEdit

7.QTextEdit

8.QComboBox

9.QSpinBox

10.QCheckBox

11.QRadioButton

12.QProgressBar

13.QSlider

14.QTableWidget

15.QTreeView

16.QDockWidget

总结


前言

        PyQt5是一款Python语言的GUI编程工具包,基于Qt库开发。Qt是一个跨平台的C++应用程序开发框架,可以用于开发桌面应用程序、移动应用程序、嵌入式应用程序等。PyQt5可以帮助开发者快速构建出美观、现代化的用户界面,并且支持多种操作系统平台,如Windows、Linux、MacOS等。PyQt5还提供了许多丰富的功能和工具,下面本文就介绍下其中最常用的模块PyQt5.QtWidgets, 它包含了GUI界面的所有窗口的控件。

 

一、PyQt5的QtWidgets介绍

PyQt5的QtWidgets模块包含了很多类,用于创建GUI应用程序的各种控件和窗口部件。其中一些主要的类包括:

  1. QApplication:应用程序类,负责管理应用程序的控制流程和事件循环。

  2. QMainWindow:主窗口类,提供了一个应用程序的主界面。

  3. QWidget:窗口部件类,是所有用户界面元素的基类。

  4. QLabel:标签类,用于显示文本或图像。

  5. QPushButton:按钮类,用于触发事件。

  6. QLineEdit:单行文本框类,用于输入单行文本。

  7. QTextEdit:多行文本框类,用于输入和显示多行文本。

  8. QComboBox:下拉框类,用于选择列表中的一个选项。

  9. QSpinBox:微调框类,用于输入和显示数字。

  10. QCheckBox:复选框类,用于选择一个或多个选项。

  11. QRadioButton:单选框类,用于选择一个选项。

  12. QProgressBar:进度条类,用于显示任务的进度。

  13. QSlider:滑块类,用于调整数值。

  14. QTableWidget:表格类,用于显示和编辑表格数据。

  15. QTreeView:树形视图类,用于显示树形结构。

  16. QDockWidget:停靠窗口类,用于显示可停靠的窗口。

二、主要类的用法

下面我会对上面提到的所有模块都进行一个简单的举例说明。

1.QApplication

import sys
from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication(sys.argv)
window = QWidget()
window.show()
sys.exit(app.exec_())

这段代码创建了一个空白的窗口并显示出来,实现了一个最简单的GUI应用程序。其结果如下图所示:

 

2.QMainWindow

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow

app = QApplication(sys.argv)
window = QMainWindow()
window.show()
sys.exit(app.exec_())

这段代码创建了一个带有菜单栏、工具栏和状态栏的主窗口,并显示出来。结果如下图所示:

 

3.QWidget

import sys
from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication(sys.argv)
window = QWidget()
window.setWindowTitle('My First PyQt5 App')
window.setGeometry(100, 100, 400, 300)
window.show()
sys.exit(app.exec_())

这段代码创建了一个带有标题和初始位置大小的窗口,并显示出来。结果如下图所示:

 

4.QLabel

import sys
from PyQt5.QtWidgets import QApplication, QLabel

app = QApplication(sys.argv)
label = QLabel('Hello, PyQt5!')
label.show()
sys.exit(app.exec_())

这段代码创建了一个显示文本的标签,并显示出来。结果如下图所示:

 

5.QPushButton

import sys
from PyQt5.QtWidgets import QApplication, QPushButton

app = QApplication(sys.argv)
button = QPushButton('Click me')
button.show()
sys.exit(app.exec_())

这段代码创建了一个带有文本的按钮,并显示出来。结果如下图所示:

 

6.QLineEdit

import sys
from PyQt5.QtWidgets import QApplication, QLineEdit

app = QApplication(sys.argv)
lineedit = QLineEdit()
lineedit.show()
sys.exit(app.exec_())

这段代码创建了一个单行文本框,并显示出来。结果如下图所示,其中的文字可以自行编写。

 

7.QTextEdit

import sys
from PyQt5.QtWidgets import QApplication, QTextEdit

app = QApplication(sys.argv)
textedit = QTextEdit()
textedit.show()
sys.exit(app.exec_())

这段代码创建了一个多行文本框,并显示出来。结果如下图所示,其中文字可自行编写。

 

8.QComboBox

import sys
from PyQt5.QtWidgets import QApplication, QComboBox

app = QApplication(sys.argv)
combobox = QComboBox()
combobox.addItems(['Apple', 'Banana', 'Orange'])
combobox.show()
sys.exit(app.exec_())

这段代码创建了一个下拉框,并添加了三个选项,然后显示出来。结果如下图所示:

 

9.QSpinBox

import sys
from PyQt5.QtWidgets import QApplication, QSpinBox

app = QApplication(sys.argv)
spinbox = QSpinBox()
spinbox.setMinimum(1)
spinbox.setMaximum(10)
spinbox.show()
sys.exit(app.exec_())

这段代码创建了一个微调框,并设置了范围,然后显示出来。结果如下图所示,其中数字通过上下按键可以调节到1~10中任意数:

 

10.QCheckBox

import sys
from PyQt5.QtWidgets import QApplication, QCheckBox

app = QApplication(sys.argv)
checkbox = QCheckBox('Check me')
checkbox.show()
sys.exit(app.exec_())

这段代码创建了一个复选框,并显示出来。结果如下图所示:

 

11.QRadioButton

import sys
from PyQt5.QtWidgets import QApplication, QRadioButton

app = QApplication(sys.argv)
radiobutton = QRadioButton('Select me')
radiobutton.show()
sys.exit(app.exec_())

这段代码创建了一个单选框,并显示出来。结果如下图所示:

 

12.QProgressBar

import sys
from PyQt5.QtWidgets import QApplication, QProgressBar

app = QApplication(sys.argv)
progressbar = QProgressBar()
progressbar.setValue(50)
progressbar.show()
sys.exit(app.exec_())

这段代码创建了一个进度条,并设置了进度值50%,然后显示出来。结果如下图所示:

 

13.QSlider

import sys
from PyQt5.QtWidgets import QApplication, QSlider

app = QApplication(sys.argv)
slider = QSlider()
slider.setMinimum(0)
slider.setMaximum(100)
slider.show()
sys.exit(app.exec_())

这段代码创建了一个滑块,并设置了范围,然后显示出来。结果如下图所示:

 

14.QTableWidget

import sys
from PyQt5.QtWidgets import QApplication, QTableWidget, QTableWidgetItem

app = QApplication(sys.argv)
tablewidget = QTableWidget()
tablewidget.setRowCount(2)
tablewidget.setColumnCount(2)
tablewidget.setItem(0, 0, QTableWidgetItem('Apple'))
tablewidget.setItem(0, 1, QTableWidgetItem('Red'))
tablewidget.setItem(1, 0, QTableWidgetItem('Banana'))
tablewidget.setItem(1, 1, QTableWidgetItem('Yellow'))
tablewidget.show()
sys.exit(app.exec_())

这段代码创建了一个表格,并设置了行列数和单元格内容,然后显示出来。结果如下图所示:

 

15.QTreeView

import sys
from PyQt5.QtWidgets import QApplication, QTreeView, QFileSystemModel

app = QApplication(sys.argv)
treeview = QTreeView()
model = QFileSystemModel()
model.setRootPath('')
treeview.setModel(model)
treeview.show()
sys.exit(app.exec_())

这段代码创建了一个树形视图,并显示出当前目录的文件和文件夹。结果如下图所示:

 

16.QDockWidget

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QDockWidget, QTextEdit

app = QApplication(sys.argv)
window = QMainWindow()
dockwidget = QDockWidget('Dock')
textedit = QTextEdit()
dockwidget.setWidget(textedit)
window.addDockWidget(1, dockwidget)
window.show()
sys.exit(app.exec_())

这段代码创建了一个停靠窗口,并将一个文本框添加到其中,然后显示出来。结果如下图所示,其中Dock窗口可以悬浮也可以停靠。


 

总结

以上就是今天要讲的内容,本文简单介绍了PyQt5.QtWidgets的常用类的使用方法,希望对大家有所帮助。

  • 10
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值