最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python GUI庫圖形界面開發(fā)之PyQt5訪問系統(tǒng)剪切板QClipboard類詳細使用方法與實例

 更新時間:2020年02月27日 16:25:25   作者:jia666666  
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5訪問系統(tǒng)剪切板QClipboard類詳細使用方法與實例,需要的朋友可以參考下

PyQt5訪問系統(tǒng)剪切板QClipboard類介紹

QClipboard類提供了對系統(tǒng)剪切板的訪問,可以在應用程序之間復制和粘貼數(shù)據(jù),它的操作類似于QDrag類,,并使用類似的數(shù)據(jù)結構

QApplication類有一個靜態(tài)方法clipboard(),它的返回值對剪切板對象的引用,任何類型的MimeData都可以從剪切板復制或粘貼

QClipboard類中的常用方法如表

方法 描述
clear() 清空剪切板的內(nèi)容
setImage() 將QImage對象復制到剪切板中
setMimeData() 將MIME數(shù)據(jù)設置為剪切板
setPixmap() 從剪切板中復制Pixmap對象
setText() 從剪切板中復制文本
text() 從剪切板中檢索文本

QClipboard類中的常用信號

信號 含義
dataChanged 當剪切板內(nèi)容發(fā)生變化時,這個信號被發(fā)射

QClipboard訪問系統(tǒng)剪切版的使用實例

import os
import sys
from PyQt5.QtCore import QMimeData
from PyQt5.QtWidgets import (QApplication, QDialog, QGridLayout, QLabel, QPushButton)
from PyQt5.QtGui import QPixmap


class Form(QDialog):
  def __init__(self, parent=None):
    super(Form, self).__init__(parent)

    #創(chuàng)建復制粘貼按鈕,并添加快捷鍵
    textCopyButton = QPushButton("&Copy Text")
    textPasteButton = QPushButton("Paste &Text")
    htmlCopyButton = QPushButton("C&opy HTML")
    htmlPasteButton = QPushButton("Paste &HTML")
    imageCopyButton = QPushButton("Co&py Image")
    imagePasteButton = QPushButton("Paste &Image")

    #創(chuàng)建文本標簽和圖像標簽,顯示文本和圖像
    self.textLabel = QLabel("Original text")
    self.imageLabel = QLabel()
    self.imageLabel.setPixmap(QPixmap(os.path.join(
      os.path.dirname(__file__), "E:\pyqt5快速開發(fā)與實戰(zhàn)\第四章\images\python.png")))

    #設置柵格布局,并添加部件到相應的位置
    layout = QGridLayout()
    layout.addWidget(textCopyButton, 0, 0)
    layout.addWidget(imageCopyButton, 0, 1)
    layout.addWidget(htmlCopyButton, 0, 2)
    layout.addWidget(textPasteButton, 1, 0)
    layout.addWidget(imagePasteButton, 1, 1)
    layout.addWidget(htmlPasteButton, 1, 2)
    layout.addWidget(self.textLabel, 2, 0, 1, 2)
    layout.addWidget(self.imageLabel, 2, 2)

    #設置主窗口的布局,自定義槽函數(shù),設置標題
    self.setLayout(layout)
    textCopyButton.clicked.connect(self.copyText)
    textPasteButton.clicked.connect(self.pasteText)
    htmlCopyButton.clicked.connect(self.copyHtml)
    htmlPasteButton.clicked.connect(self.pasteHtml)
    imageCopyButton.clicked.connect(self.copyImage)
    imagePasteButton.clicked.connect(self.pasteImage)
    self.setWindowTitle("Clipboard 例子")

  def copyText(self):
    #實例化剪切板,設置剪切板的文本
    clipboard = QApplication.clipboard()
    clipboard.setText("I've been clipped!")

  def pasteText(self):
    #實例化剪切板,標簽設置為剪切板的文本并顯示
    clipboard = QApplication.clipboard()
    self.textLabel.setText(clipboard.text())

  def copyImage(self):
    #實例化剪切板,設置剪切板加載的圖想路徑
    clipboard = QApplication.clipboard()
    clipboard.setPixmap(QPixmap(os.path.join(
      os.path.dirname(__file__), "./images/python.png")))

  def pasteImage(self):
    #實例化剪切板,z設置圖像標簽的圖片加載,從剪切板獲取路徑
    clipboard = QApplication.clipboard()
    self.imageLabel.setPixmap(clipboard.pixmap())

  def copyHtml(self):
    #實例化MimeData數(shù)據(jù)類型,設置類型Html的文本
    mimeData = QMimeData()
    mimeData.setHtml("<b>Bold and <font color=red>Red</font></b>")
    #實例化剪切板,設置MimeData的初值文本
    clipboard = QApplication.clipboard()
    clipboard.setMimeData(mimeData)

  def pasteHtml(self):
    #實例化剪切板,,獲取MimeData的數(shù)據(jù),并設置為標簽的文本值
    clipboard = QApplication.clipboard()
    mimeData = clipboard.mimeData()
    if mimeData.hasHtml():
      self.textLabel.setText(mimeData.html())


if __name__ == "__main__":
  app = QApplication(sys.argv)
  form = Form()
  form.show()
  sys.exit(app.exec_())

效果圖如下

QClipboard代碼分析

在這個例子中,有六個按鈕和2個標簽,需要實例化Clipboard對象,

可以將文本復制到Clipboard對象中

#實例化剪切板,標簽設置為剪切板的文本并顯示
clipboard = QApplication.clipboard()
self.textLabel.setText(clipboard.text())

也可以將圖片復制到剪切板對象中

clipboard = QApplication.clipboard()
self.imageLabel.setPixmap(clipboard.pixmap())

本文主要講解了python PyQt5訪問系統(tǒng)剪切板QClipboard類詳細使用方法與實例,更多相關知識請查看下面的相關鏈接

相關文章

  • Python封裝shell命令實例分析

    Python封裝shell命令實例分析

    這篇文章主要介紹了Python封裝shell命令,實例分析了Python將各種常用shell命令封裝進一個類中以便調用的方法,非常具有實用價值,需要的朋友可以參考下
    2015-05-05
  • Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用

    Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用

    Python,numpy都有自己的一套數(shù)據(jù)格式,本文主要介紹了Pandas數(shù)據(jù)類型轉換df.astype()及數(shù)據(jù)類型查看df.dtypes的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • python多線程并發(fā)及測試框架案例

    python多線程并發(fā)及測試框架案例

    這篇文章主要介紹了python多線程并發(fā)及測試框架案例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • VS2022安裝Python開發(fā)環(huán)境的詳細過程

    VS2022安裝Python開發(fā)環(huán)境的詳細過程

    這篇文章主要介紹了VS2022安裝Python開發(fā)環(huán)境,文中用Python實現(xiàn)裴波那契數(shù)列,來感受一下Python的魅力,結合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • python操作redis數(shù)據(jù)庫的三種方法

    python操作redis數(shù)據(jù)庫的三種方法

    這篇文章主要介紹了python操作redis數(shù)據(jù)庫的三種方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • python之PyMongo使用總結

    python之PyMongo使用總結

    本篇文章主要介紹了python之PyMongo使用總結,詳細的介紹了PyMongo模塊的使用,具有一定的參考價值,有興趣的可以了解一下
    2017-05-05
  • Python之進行URL編碼案例講解

    Python之進行URL編碼案例講解

    這篇文章主要介紹了Python之進行URL編碼案例講解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 用Python將一個列表分割成小列表的實例講解

    用Python將一個列表分割成小列表的實例講解

    今天小編就為大家分享一篇用Python將一個列表分割成小列表的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python實現(xiàn)郵件發(fā)送功能的方法詳解

    Python實現(xiàn)郵件發(fā)送功能的方法詳解

    本文將學會各種類型的郵件發(fā)送方式,比如普通文本郵件、帶附件的郵件等等,如何通過程序發(fā)送郵件現(xiàn)在我們還不太了解,接下來就會為大家進行詳細的介紹
    2022-05-05
  • Python爬蟲教程使用Scrapy框架爬取小說代碼示例

    Python爬蟲教程使用Scrapy框架爬取小說代碼示例

    相信學Python爬蟲的小伙伴聽說過Scrapy框架,也用過Scrapy框架,今天我們邊學習Scrapy框架邊爬取整部小說,讓大家在不知不覺的學習過程中使用Scrapy框架完成整部小說的爬取
    2021-09-09

最新評論

田阳县| 洛南县| 措勤县| 临邑县| 乾安县| 曲麻莱县| 七台河市| 曲麻莱县| 咸丰县| 江源县| 长寿区| 葫芦岛市| 蓬安县| 桑日县| 浦城县| 宣恩县| 德阳市| 冕宁县| 陇南市| 神木县| 桓仁| 宝兴县| 宽城| 和顺县| 莎车县| 台湾省| 庆城县| 四川省| 筠连县| 获嘉县| 宿松县| 成安县| 常宁市| 遂川县| 灌云县| 苏尼特左旗| 凤山县| 松原市| 中方县| 屏东县| 交城县|