pycharm——關于Pyqt5

PyQt5新手教程(七萬字)

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QPushButton, QLabel, QInputDialog, QColorDialog, QFontDialog, QFileDialog, QProgressDialog, QMessageBox
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QColorclass MainWindow(QMainWindow):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle("Dialogs Example")self.setGeometry(100, 100, 400, 300)layout = QVBoxLayout()# 輸入對話框按鈕input_btn = QPushButton("Input Dialog")input_btn.clicked.connect(self.show_input_dialog)layout.addWidget(input_btn)# 顏色對話框按鈕color_btn = QPushButton("Color Dialog")color_btn.clicked.connect(self.show_color_dialog)layout.addWidget(color_btn)# 字體對話框按鈕font_btn = QPushButton("Font Dialog")font_btn.clicked.connect(self.show_font_dialog)layout.addWidget(font_btn)# 打開文件對話框按鈕open_file_btn = QPushButton("Open File Dialog")open_file_btn.clicked.connect(self.show_file_dialog)layout.addWidget(open_file_btn)# 進度對話框按鈕progress_btn = QPushButton("Progress Dialog")progress_btn.clicked.connect(self.show_progress_dialog)layout.addWidget(progress_btn)# 消息框按鈕message_btn = QPushButton("Message Box")message_btn.clicked.connect(self.show_message_box)layout.addWidget(message_btn)# 標簽用于顯示結果self.result_label = QLabel()layout.addWidget(self.result_label)central_widget = QWidget()central_widget.setLayout(layout)self.setCentralWidget(central_widget)def show_input_dialog(self):text, ok = QInputDialog.getText(self, "Input Dialog", "Enter something:")if ok and text:self.result_label.setText(f"Input: {text}")else:self.result_label.setText("Input Dialog Canceled")def show_color_dialog(self):color = QColorDialog.getColor(QColor(255, 0, 0), self, "Color Dialog")if color.isValid():self.result_label.setStyleSheet(f"background-color: {color.name()}")self.result_label.setText(f"Selected Color: {color.name()}")def show_font_dialog(self):font, ok = QFontDialog.getFont(self)if ok:self.result_label.setFont(font)self.result_label.setText(f"Selected Font: {font.family()}, {font.pointSize()}pt")def show_file_dialog(self):file_name, _ = QFileDialog.getOpenFileName(self, "Open File Dialog", "", "All Files (*);;Text Files (*.txt)")if file_name:self.result_label.setText(f"Selected File: {file_name}")def show_progress_dialog(self):progress_dialog = QProgressDialog("Processing...", "Cancel", 0, 100, self)progress_dialog.setWindowModality(Qt.WindowModal)progress_dialog.setWindowTitle("Progress Dialog")for i in range(100):progress_dialog.setValue(i)if progress_dialog.wasCanceled():breakself.result_label.setText("Progress Dialog Completed")def show_message_box(self):msg_box = QMessageBox()msg_box.setIcon(QMessageBox.Information)msg_box.setWindowTitle("Message Box")msg_box.setText("This is an information message box.")msg_box.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)result = msg_box.exec_()if result == QMessageBox.Ok:self.result_label.setText("Message Box: Ok button clicked")else:self.result_label.setText("Message Box: Cancel button clicked")if __name__ == "__main__":app = QApplication(sys.argv)window = MainWindow()window.show()sys.exit(app.exec_())

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/96531.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/96531.shtml
英文地址,請注明出處:http://en.pswp.cn/web/96531.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

P2678 [NOIP 2015 提高組] 跳石頭

P2678 [NOIP 2015 提高組] 跳石頭 判斷條件該怎么寫

小麥矩陣系統:一鍵批量發,多賬號同步不掉鏈

隨著互聯網的發展和社交平臺的普及,企業和個人用戶越來越依賴社交媒體平臺來進行信息傳播、品牌宣傳以及市場推廣。在這個信息高速流動的時代,如何更高效地管理多個社交平臺的賬號,并保持信息的同步與流暢傳播,成為了許多企業面臨…

JavaScript經典面試題二(函數和作用域)

目錄 一、閉包,使用場景 1.閉包的定義 2.閉包的實現原理 3.閉包的應用場景 (1)數據封裝與私有變量 (2)函數柯里化 (3)事件處理與回調 (4)模塊化開發 4.注意事項 …

Linux防火墻iptables

目錄 一,Iptables概述 二,iptables組成 1,表 2,鏈 3,鏈表對應關系 4,數據包過濾的匹配流程 5,規則匹配策略 三,iptables防火墻配置 1,iptables命令 2&#xff…

[優選算法專題二——NO.16最小覆蓋子串]

題目鏈接 LeetCode最小覆蓋子串 題目描述 代碼編寫 、關鍵注意點 僅統計目標相關字符:通過 hash1.count(in) 判斷字符是否在 t 中,避免無關字符(如 s 中的 D、E)干擾統計,提升效率。count 的更新時機:僅當…

考研408計算機網絡近年第34題真題解析(2021-2024.34)

(2021.34)此題已明確為差分曼徹斯特編碼,通常第一個時間間隙可能不太好判斷,因為0,或1可以變化,但差分曼徹斯特編碼的其它位置可以判斷,圖中黃色數字的時間間隙位置,開始位置和前面一…

微信小程序開發教程(八)

目錄:1.全局配置-tabBar2.小程序的頁面配置3.數據請求-GET和POST請求4.數據請求-request請求的注意事項1.全局配置-tabBar注意tabar頁面必須放到Page頭部位置2.小程序的頁面配置3.數據請求-GET和POST請求4.數據請求-request請求的注意事項

日語學習-日語知識點小記-構建基礎-JLPT-N3階段(29):文法運用第9回3+(考え方11)

日語學習-日語知識點小記-構建基礎-JLPT-N3階段(31):文法運用第9回31、前言(1)情況說明(2)工程師的信仰2、知識點1ー 復習2ー 單詞訓練3、單詞(1)日語單詞  …

小鵬汽車在 VLA(視覺 - 語言 - 動作)算法模型框架細節與原理

小鵬汽車的 VLA(視覺 - 語言 - 動作)算法模型框架是其端到端自動駕駛系統的核心,融合了多模態感知、語言推理與動作生成能力。以下是其技術細節與原理的深度解析: 一、整體架構:混合式端到端設計 小鵬 VLA 采用云端基座…

京東商品詳情 API 全解析:合規對接與 B2C 場景實戰指南

在 B2C 電商運營中,商品詳情數據是支撐店鋪管理、庫存調控、營銷決策的核心基礎。京東商品詳情 API 作為官方合規的數據獲取通道,不僅能穩定返回商品標題、價格、庫存等關鍵信息,還針對 B2C 場景新增了預售鎖庫、次日達標識等特色字段。本文從…

【Visual Studio 2017 和 2019下載】

Visual Studio 2017 和 2019下載VS2017下載地址:VS2019下載地址:VS2017下載地址: Visual Studio 2017 Community 鏈接 Visual Studio 2017 Enterprise 鏈接 VS2019下載地址: Visual Studio 2019 Community 鏈接 Visual Studio …

Python 輕松實現替換或修改 PDF 文字

在日常開發或文檔處理過程中,經常會遇到需要對 PDF 文檔中的文字進行修改的場景。例如更新合同條款、修正報表數據,或者批量替換文件中的特定內容。由于 PDF 格式以固定排版為特點,直接修改文字不像 Word 那樣直觀,因此需要借助專…

CI/CD流水線優化實戰:從30分鐘到5分鐘的效能革命

關鍵詞:CI/CD優化、GitHub Actions、Jenkins、自動化部署、流水線加速 一、引言:CI/CD流水線為何需要優化? 在現代軟件開發中,CI/CD(持續集成/持續交付)已成為DevOps實踐的核心環節。然而,許多團隊的流水線存在效率低下問題,??平均構建時間超過30分鐘??,嚴重制約…

神經網絡矩陣的點乘與叉乘概述

點乘點乘:兩個矩陣對應位置元素相乘(逐元素級 element - wise)實現方式:可通過 * 和 torch.mul(x, y) 函數實現(含廣播機制)模型符號:一個圓圈中間加一個實心點叉乘叉乘:傳統線性代數…

PHP學習(第三天)

網站訪問流程 一、靜態網站訪問流程(如 index.html)1. 流程是怎么樣的? 靜態網站的頁面內容固定,不需要服務器做額外計算,直接把文件返回給瀏覽器。訪問流程大致如下:用戶輸入網址或點擊鏈接 用戶在 個人設…

【辦公自動化】如何使用Python腳本自動化處理音頻?

在日常辦公和內容創作中,音頻處理是一項常見需求。無論是處理會議錄音、制作播客、編輯音樂背景,還是進行語音識別,Python都能幫助我們高效地完成這些任務。本文將介紹如何使用Python實現音頻處理自動化,包括格式轉換、音頻拼接、…

OpenHarmony AVSession深度解析(二):從本地會話到分布式跨設備協同的完整生命周期管理

1. 系統概述 AVSession是OpenHarmony多媒體框架中的核心組件,負責管理音視頻會話的生命周期、狀態同步和跨設備協同。它提供了統一的接口供應用創建會話、設置元數據、控制播放狀態,并支持分布式場景下的會話遷移。 2. 架構設計 2.1 核心類結構 #mermaid-svg-QwwujBwB3Wo6…

架構思維:在復雜系統中尋找秩序的底層邏輯

在商業世界中,架構師常被視為神秘的存在。懂架構不一定是大師,但,大師一定善于架構,善于撥開迷霧,看透全局。他們穿梭于代碼與流程之間,用看不見的線條編織著數字世界的經緯。 架構天然的使命就是面對復雜…

國產凝思debian系Linux離線安裝rabbitmq教程步驟

系統環境 由于國內訪問debian的apt源太慢了,花了很多很多時間后,反而超時報錯。所以采用離線安裝方式。 uname -a Linux bogon 4.19.0-11-linx-security-amd64 #1 SMP Linx 4.19.146-1linx10 (2023-05-30) x86_64 GNU/Linux下載安裝包 在有網絡的電腦…

開發避坑指南(48):Java Stream 判斷List元素的屬性是否包含指定的值

需求 Java Stream 判斷List元素的屬性是否包含指定的值該怎么實現? 代碼實現 直接上代碼 public class OrderInfo {private BigDecimal fee;private String orderStatus; }public class ListTest2 {public static void main(String[] args) {OrderInfo orderInfo n…