PyQt5 加載圖片和文本文件的實例
首先我們來看一組效果

選擇圖片文本設(shè)置完以后

選擇過程中

核心代碼解釋
# 這個函數(shù)是用來打開電腦的資源管理器選擇照片用的
def loadFile(self):
print("load--file")
# QFileDialog就是系統(tǒng)對話框的那個類第一個參數(shù)是上下文,第二個參數(shù)是彈框的名字,第三個參數(shù)是開始打開的路徑,第四個參數(shù)是需要的格式
fname, _ = QFileDialog.getOpenFileName(self, '選擇圖片', 'c:\\', 'Image files(*.jpg *.gif *.png)')
self.label.setPixmap(QPixmap(fname))
# 這個函數(shù)是打開文本選擇器,加載文本的函數(shù)
def load_text(self):
print("load--text")
#初始化這個實例,設(shè)置一些基本屬性
dlg = QFileDialog()
dlg.setFileMode(QFileDialog.AnyFile)
dlg.setFilter(QDir.Files)
# 當選擇器關(guān)閉的時候
if dlg.exec_():
# 拿到所選擇的的文本
filenames = dlg.selectedFiles()
#讀取文本內(nèi)容設(shè)置到TextEdit當中來
f = open(filenames[0], 'r')
with f:
data = f.read()
self.content.setText(data)
完整代碼
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class filedialogdemo(QWidget):
def __init__(self, parent=None):
super(filedialogdemo, self).__init__(parent)
layout = QVBoxLayout()
self.btn = QPushButton()
self.btn.clicked.connect(self.loadFile)
self.btn.setText("從文件中獲取照片")
layout.addWidget(self.btn)
self.label = QLabel()
layout.addWidget(self.label)
self.btn_2 = QPushButton()
self.btn_2.clicked.connect(self.load_text)
self.btn_2.setText("加載電腦文本文件")
layout.addWidget(self.btn_2)
self.content = QTextEdit()
layout.addWidget(self.content)
self.setWindowTitle("測試")
self.setLayout(layout)
def loadFile(self):
print("load--file")
fname, _ = QFileDialog.getOpenFileName(self, '選擇圖片', 'c:\\', 'Image files(*.jpg *.gif *.png)')
self.label.setPixmap(QPixmap(fname))
def load_text(self):
print("load--text")
dlg = QFileDialog()
dlg.setFileMode(QFileDialog.AnyFile)
dlg.setFilter(QDir.Files)
if dlg.exec_():
filenames = dlg.selectedFiles()
f = open(filenames[0], 'r')
with f:
data = f.read()
self.content.setText(data)
if __name__ == '__main__':
app = QApplication(sys.argv)
fileload = filedialogdemo()
fileload.show()
sys.exit(app.exec_())
以上這篇PyQt5 加載圖片和文本文件的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
django restframework使用redis實現(xiàn)token認證
本文主要介紹了django restframework使用redis實現(xiàn)token認證,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
pytorch 狀態(tài)字典:state_dict使用詳解
今天小編就為大家分享一篇pytorch 狀態(tài)字典:state_dict使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
PyCharm運行python測試,報錯“沒有發(fā)現(xiàn)測試”/“空套件”的解決
這篇文章主要介紹了PyCharm運行python測試,報錯“沒有發(fā)現(xiàn)測試”/“空套件”的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
python用pip install時安裝失敗的一系列問題及解決方法
這篇文章主要介紹了python用pip install時安裝失敗的一系列問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-02-02
Python簡單格式化時間的方法【strftime函數(shù)】
這篇文章主要介紹了Python簡單格式化時間的方法,結(jié)合實例形式分析了Python使用strftime函數(shù)進行時間格式化的操作技巧,需要的朋友可以參考下2016-09-09
django使用定時任務(wù)django_apscheduler的實現(xiàn)
定時任務(wù)無論是個人開發(fā)還是企業(yè)業(yè)務(wù)都是需要的,本文主要介紹了django使用定時任務(wù)django_apscheduler的實現(xiàn),減少請求時需要用戶等待的時間,感興趣的可以了解一下2021-08-08
Python模塊psycopg2連接postgresql的實現(xiàn)
本文主要介紹了Python模塊psycopg2連接postgresql的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
nlp自然語言處理基于SVD的降維優(yōu)化學(xué)習(xí)
這篇文章主要為大家介紹了nlp自然語言處理基于SVD的降維優(yōu)化學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-04-04

