溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

PyQt5 加載圖片和文本文件的實例

發(fā)布時間:2020-08-25 08:01:33 來源:腳本之家 閱讀:190 作者:京城最明亮的少年 欄目:開發(fā)技術(shù)

首先我們來看一組效果

PyQt5 加載圖片和文本文件的實例

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

PyQt5 加載圖片和文本文件的實例

選擇過程中

PyQt5 加載圖片和文本文件的實例

核心代碼解釋

  # 這個函數(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)
    # 當(dāng)選擇器關(guān)閉的時候
    if dlg.exec_():
      # 拿到所選擇的的文本
      filenames = dlg.selectedFiles()
      #讀取文本內(nèi)容設(shè)置到TextEdit當(dāng)中來
      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)容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI