国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python3+PyQt5實現使用剪貼板做復制與粘帖示例

2019-11-25 16:22:57
字體:
來源:轉載
供稿:網友

本文是對《Python Qt GUI快速編程》的第10章的例子剪貼板用Python3+PyQt5進行改寫,分別對文本,圖片和html文本的復制與粘帖,三種做法大同小異。

#!/usr/bin/env python3import osimport sysfrom PyQt5.QtCore import (QMimeData, Qt)from PyQt5.QtWidgets import (QApplication, QDialog, QGridLayout, QLabel,    QPushButton)from PyQt5.QtGui import QPixmapclass Form(QDialog):  def __init__(self, parent=None):    super(Form, self).__init__(parent)    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")    self.textLabel = QLabel("Original text")    self.imageLabel = QLabel()    self.imageLabel.setPixmap(QPixmap(os.path.join(        os.path.dirname(__file__), "images/clock.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)    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/gvim.png")))  def pasteImage(self):    clipboard = QApplication.clipboard()    self.imageLabel.setPixmap(clipboard.pixmap())  def copyHtml(self):    mimeData = QMimeData()    mimeData.setHtml("<b>Bold and <font color=red>Red</font></b>")    clipboard = QApplication.clipboard()    clipboard.setMimeData(mimeData)  def pasteHtml(self):    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()  app.exec_()

運行結果:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南投市| 岐山县| 嘉禾县| 沿河| 普宁市| 永吉县| 平顶山市| 黄骅市| 凤台县| 嘉祥县| 郴州市| 远安县| 三门峡市| 辽宁省| 庆城县| 会理县| 泸溪县| 突泉县| 同心县| 德州市| 忻州市| 上思县| 巴塘县| 略阳县| 香格里拉县| 芦溪县| 澳门| 汶上县| 宝丰县| 措勤县| 大同市| 黄山市| 鄄城县| 新余市| 靖宇县| 沁水县| 岚皋县| 商丘市| 铅山县| 海城市| 唐河县|