diff --git a/01-HelloWorld-基本结构/01-HelloWorld-第一个PySide6程序.py b/01-HelloWorld-基本结构/01-HelloWorld-第一个PySide6程序.py index ce51959..c5ac625 100644 --- a/01-HelloWorld-基本结构/01-HelloWorld-第一个PySide6程序.py +++ b/01-HelloWorld-基本结构/01-HelloWorld-第一个PySide6程序.py @@ -37,7 +37,9 @@ class MyWidget(QtWidgets.QWidget): if __name__ == "__main__": - app = QtWidgets.QApplication(sys.argv) # 创建APP,将运行脚本时(可能的)的其他参数传给Qt以初始化 + app = QtWidgets.QApplication( + sys.argv + ) # 创建APP,将运行脚本时(可能的)的其他参数传给Qt以初始化 widget = MyWidget() # 实例化一个MyWidget类对象 widget.show() # 显示窗口 sys.exit(app.exec()) # 正常退出APP:app.exec()关闭app,sys.exit()退出进程 diff --git a/03-QtWidgets-常用控件/01-QWidget-控件的基类/10-QWidget-光标.py b/03-QtWidgets-常用控件/01-QWidget-控件的基类/10-QWidget-光标.py index 9c286a6..8e84f4d 100644 --- a/03-QtWidgets-常用控件/01-QWidget-控件的基类/10-QWidget-光标.py +++ b/03-QtWidgets-常用控件/01-QWidget-控件的基类/10-QWidget-光标.py @@ -57,7 +57,9 @@ class MyWidget(QtWidgets.QWidget): # 设置为自定义图案光标 pixmap = QtGui.QPixmap("../../Resources/Icons/snowflake_128px.ico").scaled(52, 52) - my_cursor = QtGui.QCursor(pixmap, 26, 26) # 以图片像素点位置26,26为热点(光标实际所在位置坐标) + my_cursor = QtGui.QCursor( + pixmap, 26, 26 + ) # 以图片像素点位置26,26为热点(光标实际所在位置坐标) self.setCursor(my_cursor) # 设置label中的光标为Qt内置的其他光标 diff --git a/03-QtWidgets-常用控件/03-QLineEdit-单行文本编辑器/07-QLineEdit-光标.py b/03-QtWidgets-常用控件/03-QLineEdit-单行文本编辑器/07-QLineEdit-光标.py index 375a794..8347a1a 100644 --- a/03-QtWidgets-常用控件/03-QLineEdit-单行文本编辑器/07-QLineEdit-光标.py +++ b/03-QtWidgets-常用控件/03-QLineEdit-单行文本编辑器/07-QLineEdit-光标.py @@ -74,7 +74,9 @@ class MyWidget(QtWidgets.QWidget): pos_layout = QtWidgets.QFormLayout() pos_layout.addRow(QtWidgets.QLabel("光标当前位于:"), self.pos_line_edit) pos_layout.addRow(QtWidgets.QLabel("将光标设置到:"), self.set_pos_spinbox) - pos_layout.addRow(QtWidgets.QLabel(f"{self.point.toTuple()}处的光标位于"), self.pos_at_label) + pos_layout.addRow( + QtWidgets.QLabel(f"{self.point.toTuple()}处的光标位于"), self.pos_at_label + ) pos_groupbox.setLayout(pos_layout) # ================ 光标移动风格 ======================= diff --git a/03-QtWidgets-常用控件/07-QScrollArea-滚动区域/02-QScrollArea-视图控件.py b/03-QtWidgets-常用控件/07-QScrollArea-滚动区域/02-QScrollArea-视图控件.py index 1fc69ba..cc14d1c 100644 --- a/03-QtWidgets-常用控件/07-QScrollArea-滚动区域/02-QScrollArea-视图控件.py +++ b/03-QtWidgets-常用控件/07-QScrollArea-滚动区域/02-QScrollArea-视图控件.py @@ -77,7 +77,9 @@ class MyWidget(QtWidgets.QWidget): self.scroll_area.widget().resize(200, 400) # 尺寸小于滚动区域尺寸 # 设置对齐方式 - self.scroll_area.setAlignment(Qt.AlignHCenter | Qt.AlignBottom) # 设置为水平居中、垂直靠底部对齐 + self.scroll_area.setAlignment( + Qt.AlignHCenter | Qt.AlignBottom + ) # 设置为水平居中、垂直靠底部对齐 def test_02(self) -> None: """测试尺寸控制、确保可见功能""" diff --git a/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/02-QPlainTextEdit-换行方式、只读.py b/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/02-QPlainTextEdit-换行方式、只读.py index 65e3035..8bef759 100644 --- a/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/02-QPlainTextEdit-换行方式、只读.py +++ b/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/02-QPlainTextEdit-换行方式、只读.py @@ -68,7 +68,9 @@ class MyWidget(QtWidgets.QWidget): """测试自动换行功能""" # 设置换行模式 - self.pte.setLineWrapMode(QtWidgets.QPlainTextEdit.LineWrapMode.WidgetWidth) # 自动换行(默认值) + self.pte.setLineWrapMode( + QtWidgets.QPlainTextEdit.LineWrapMode.WidgetWidth + ) # 自动换行(默认值) # self.pte.setLineWrapMode(QtWidgets.QPlainTextEdit.LineWrapMode.NoWrap) # 关闭自动换行 print(self.pte.lineWrapMode()) # 获取换行模式 diff --git a/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/08-QPlainText-案例-显示行号.py b/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/08-QPlainText-案例-显示行号.py index 2b88baf..76811b1 100644 --- a/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/08-QPlainText-案例-显示行号.py +++ b/03-QtWidgets-常用控件/08-TextEdit-文本编辑器与阅读器/01-QPlainTextEdit-纯文本编辑器/08-QPlainText-案例-显示行号.py @@ -23,7 +23,9 @@ class MyWidget(QtWidgets.QWidget): self.pte = QtWidgets.QPlainTextEdit(self) self.pte.resize(350, 400) self.pte.move(150, 80) - self.pte.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOn) # 始终显示滚动条 + self.pte.setVerticalScrollBarPolicy( + QtCore.Qt.ScrollBarPolicy.ScrollBarAlwaysOn + ) # 始终显示滚动条 # 用于限制line_num_label位置尺寸的父控件 line_num_widget = QtWidgets.QWidget(self) diff --git a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/01-QAbstractSpinBox-数值设定框抽象基类/02-QAbstractSpinBox-获取文本、对齐方式、千分符、特数值文本.py b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/01-QAbstractSpinBox-数值设定框抽象基类/02-QAbstractSpinBox-获取文本、对齐方式、千分符、特数值文本.py index bee6b21..edb88da 100644 --- a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/01-QAbstractSpinBox-数值设定框抽象基类/02-QAbstractSpinBox-获取文本、对齐方式、千分符、特数值文本.py +++ b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/01-QAbstractSpinBox-数值设定框抽象基类/02-QAbstractSpinBox-获取文本、对齐方式、千分符、特数值文本.py @@ -50,7 +50,9 @@ class MyWidget(QtWidgets.QWidget): btn.clicked.connect(lambda: print(spin_box.text())) # type: ignore # =================================== 文本对齐方式 =================================== - spin_box.setAlignment(QtCore.Qt.AlignmentFlag.AlignHCenter) # 更改为水平居中对齐,默认为左对齐 + spin_box.setAlignment( + QtCore.Qt.AlignmentFlag.AlignHCenter + ) # 更改为水平居中对齐,默认为左对齐 # ==================================== 千分符 =================================== spin_box.setGroupSeparatorShown(True) # 显示千分符 diff --git a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/02-QSpinBox-数值设定框/03-QSpinBox-数值、数值显示进制、前后缀.py b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/02-QSpinBox-数值设定框/03-QSpinBox-数值、数值显示进制、前后缀.py index 3c272fd..474cd96 100644 --- a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/02-QSpinBox-数值设定框/03-QSpinBox-数值、数值显示进制、前后缀.py +++ b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/02-QSpinBox-数值设定框/03-QSpinBox-数值、数值显示进制、前后缀.py @@ -58,7 +58,9 @@ class MyWidget(QtWidgets.QWidget): spinbox.setSuffix(" cm") # 设置后缀 # spinbox.setPrefix("$ ") # 设置前缀 print(f"完整文本为{spinbox.text()}") # 获取文本时会获取到包含前后缀的完整文本 - print(f"数值为{spinbox.text().removesuffix(spinbox.suffix())}") # Python3.9提供的移除后缀方法 + print( + f"数值为{spinbox.text().removesuffix(spinbox.suffix())}" + ) # Python3.9提供的移除后缀方法 print(f"数值为{spinbox.cleanText()}") diff --git a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/04-QDateTimeEdit-日期时间编辑器/01-QDateTimeEdit-简介与创建.py b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/04-QDateTimeEdit-日期时间编辑器/01-QDateTimeEdit-简介与创建.py index 94328fe..f733d1f 100644 --- a/03-QtWidgets-常用控件/10-SpinBox-数值设定框/04-QDateTimeEdit-日期时间编辑器/01-QDateTimeEdit-简介与创建.py +++ b/03-QtWidgets-常用控件/10-SpinBox-数值设定框/04-QDateTimeEdit-日期时间编辑器/01-QDateTimeEdit-简介与创建.py @@ -36,7 +36,9 @@ class MyWidget(QtWidgets.QWidget): # dte = QtWidgets.QDateTimeEdit(self) # 创建空的日期时间编辑器 # dte = QtWidgets.QDateTimeEdit(my_time, self) # 使用QTime初始化 # dte = QtWidgets.QDateTimeEdit(my_date, self) # 使用QDate初始化 - dte = QtWidgets.QDateTimeEdit(QtCore.QDateTime.currentDateTime(), self) # 使用QDateTime初始化 + dte = QtWidgets.QDateTimeEdit( + QtCore.QDateTime.currentDateTime(), self + ) # 使用QDateTime初始化 dte.move(200, 200) diff --git a/03-QtWidgets-常用控件/11-ComboBox-下拉框/01-QComboBox-组合下拉框/03-QComboBox-条目操作-2.py b/03-QtWidgets-常用控件/11-ComboBox-下拉框/01-QComboBox-组合下拉框/03-QComboBox-条目操作-2.py index 974c15e..f3d2a8d 100644 --- a/03-QtWidgets-常用控件/11-ComboBox-下拉框/01-QComboBox-组合下拉框/03-QComboBox-条目操作-2.py +++ b/03-QtWidgets-常用控件/11-ComboBox-下拉框/01-QComboBox-组合下拉框/03-QComboBox-条目操作-2.py @@ -87,7 +87,9 @@ class MyWidget(QtWidgets.QWidget): cbb.setEditText("000") # 将当前文本设置为00,而不影响其他条目 # 设置尺寸调整策略 - cbb.setSizeAdjustPolicy(QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents) # 总是根据内容调整尺寸 + cbb.setSizeAdjustPolicy( + QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents + ) # 总是根据内容调整尺寸 # 限制最小字符数 cbb.setMinimumContentsLength(3) diff --git a/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/01-QFontComboBox-简介与创建.py b/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/01-QFontComboBox-简介与创建.py index e1d4f48..31d61e9 100644 --- a/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/01-QFontComboBox-简介与创建.py +++ b/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/01-QFontComboBox-简介与创建.py @@ -29,7 +29,9 @@ class MyWidget(QtWidgets.QWidget): fcb = QtWidgets.QFontComboBox() # 创建示例文本并连接信号,当用户选择字体改变时,对应改变示例文本的字体 - text_label = QtWidgets.QLabel("我能吞下玻璃而不伤身体\nThe quick brown fox jumps over the lazy dog.") + text_label = QtWidgets.QLabel( + "我能吞下玻璃而不伤身体\nThe quick brown fox jumps over the lazy dog." + ) fcb.currentFontChanged.connect(text_label.setFont) # type: ignore # 使用布局管理器布局界面 diff --git a/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/02-QFontComboBox-功能作用.py b/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/02-QFontComboBox-功能作用.py index 6849a9c..f60acfe 100644 --- a/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/02-QFontComboBox-功能作用.py +++ b/03-QtWidgets-常用控件/11-ComboBox-下拉框/02-QFontComboBox-字体下拉框/02-QFontComboBox-功能作用.py @@ -56,7 +56,9 @@ class MyWidget(QtWidgets.QWidget): fcb = QtWidgets.QFontComboBox() # 创建示例文本并连接信号,当用户选择字体改变时,对应改变示例文本的字体 - text_label = QtWidgets.QLabel("我能吞下玻璃而不伤身体。\nThe quick brown fox jumps over the lazy dog.") + text_label = QtWidgets.QLabel( + "我能吞下玻璃而不伤身体。\nThe quick brown fox jumps over the lazy dog." + ) fcb.currentFontChanged.connect(text_label.setFont) # type: ignore # 使用布局管理器布局界面 @@ -66,7 +68,9 @@ class MyWidget(QtWidgets.QWidget): self.setLayout(layout) # ======================== 设置显示字体 ======================== - fcb.setDisplayFont("Arial", QtGui.QFont("Arial Black", italic=True)) # 注意在本地测试时使用本机已安装的字体 + fcb.setDisplayFont( + "Arial", QtGui.QFont("Arial Black", italic=True) + ) # 注意在本地测试时使用本机已安装的字体 # 此时在combobox中的"Arial"条目是用黑体斜体显示的,而非原来的Arial字体 # ======================== 设置示例文本、书写系统 ======================== diff --git a/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/01-QFileDialog-简介与创建.py b/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/01-QFileDialog-简介与创建.py index eaf3bcd..3d2b88b 100644 --- a/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/01-QFileDialog-简介与创建.py +++ b/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/01-QFileDialog-简介与创建.py @@ -28,8 +28,12 @@ class MyWidget(QtWidgets.QWidget): """配置对话框属性功能""" self.dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptMode.AcceptOpen) # 打开模式 self.dialog.setFileMode(QtWidgets.QFileDialog.FileMode.ExistingFiles) # 选择现有文件 - self.dialog.setLabelText(QtWidgets.QFileDialog.DialogLabel.Accept, "选择") # 为「接受」按键指定文本 - self.dialog.setLabelText(QtWidgets.QFileDialog.DialogLabel.Reject, "取消") # 为「拒绝」按键指定文本 + self.dialog.setLabelText( + QtWidgets.QFileDialog.DialogLabel.Accept, "选择" + ) # 为「接受」按键指定文本 + self.dialog.setLabelText( + QtWidgets.QFileDialog.DialogLabel.Reject, "取消" + ) # 为「拒绝」按键指定文本 def setup_ui(self) -> None: """设置界面""" diff --git a/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/03-QFileDialog-默认后缀名、标签文本、目录.py b/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/03-QFileDialog-默认后缀名、标签文本、目录.py index 60742ac..556c1fc 100644 --- a/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/03-QFileDialog-默认后缀名、标签文本、目录.py +++ b/03-QtWidgets-常用控件/12-Dialog-对话框/03-QFileDialog-文件对话框/03-QFileDialog-默认后缀名、标签文本、目录.py @@ -38,14 +38,20 @@ class MyWidget(QtWidgets.QWidget): def setup_dialog(self) -> None: """设置文件对话框""" - self.dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptMode.AcceptSave) # 文件对话框用于保存文件 + self.dialog.setAcceptMode( + QtWidgets.QFileDialog.AcceptMode.AcceptSave + ) # 文件对话框用于保存文件 # 默认后缀名 self.dialog.setDefaultSuffix("txt") # 设置默认后缀名 # 标签文本 - self.dialog.setLabelText(QtWidgets.QFileDialog.DialogLabel.Accept, "保存") # 将Accept按钮文本设置为保存 - self.dialog.setLabelText(QtWidgets.QFileDialog.DialogLabel.Reject, "取消") # 将Reject标签文本设置为取消 + self.dialog.setLabelText( + QtWidgets.QFileDialog.DialogLabel.Accept, "保存" + ) # 将Accept按钮文本设置为保存 + self.dialog.setLabelText( + QtWidgets.QFileDialog.DialogLabel.Reject, "取消" + ) # 将Reject标签文本设置为取消 def setup_ui(self) -> None: """设置界面""" diff --git a/03-QtWidgets-常用控件/12-Dialog-对话框/05-QMessageBox-信息提示框/04-QMessageBox-静态方法.py b/03-QtWidgets-常用控件/12-Dialog-对话框/05-QMessageBox-信息提示框/04-QMessageBox-静态方法.py index 96def6b..3b69be4 100644 --- a/03-QtWidgets-常用控件/12-Dialog-对话框/05-QMessageBox-信息提示框/04-QMessageBox-静态方法.py +++ b/03-QtWidgets-常用控件/12-Dialog-对话框/05-QMessageBox-信息提示框/04-QMessageBox-静态方法.py @@ -70,7 +70,9 @@ class MyWidget(QWidget): """测试QMessageBox的静态方法""" self.about_btn.clicked.connect( - lambda: QMessageBox.about(self, "关于此程序", "本程序为PySide6 Code Tutorial中的一个案例") + lambda: QMessageBox.about( + self, "关于此程序", "本程序为PySide6 Code Tutorial中的一个案例" + ) ) # type: ignore self.about_qt_btn.clicked.connect(lambda: QMessageBox.aboutQt(self)) # type: ignore @@ -99,7 +101,10 @@ class MyWidget(QWidget): def show_warn_dlg() -> None: """self.warning_btn对应的槽函数""" result = QMessageBox.warning( - self, "静态方法-警告", "警告:直接退出将不会保存修改", QMessageBox.StandardButton.Discard + self, + "静态方法-警告", + "警告:直接退出将不会保存修改", + QMessageBox.StandardButton.Discard, ) self.label.setText(f"用户选择了:{user_result_dict[result]}") self.label.adjustSize()