pythonGUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5簡(jiǎn)單繪圖板實(shí)例與代碼分析-創(chuàng)新互聯(lián)

在PyQt中常用的圖像類有四種,QPixmap,QImage,QPicture,QBitmap

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的西鄉(xiāng)塘網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
類型 描述
QPixmap 專門為繪圖設(shè)計(jì)的,在繪制圖片時(shí)需要使用QPixmap
QImage 提供了一個(gè)與硬件無(wú)關(guān)的圖像表示函數(shù),可以用于圖片像素級(jí)訪問(wèn)
QPicture 是一個(gè)繪圖設(shè)備類,它繼承自QPainter類,可以使用QPainter的begin()函數(shù)在QPicture上繪圖,使用end()函數(shù)結(jié)束繪圖,使用QPicture的save()函數(shù)將QPainter所使用的繪圖指令保存在文件中
QBitmap 是一個(gè)繼承自QPixmap的簡(jiǎn)單類,它提供了1bit深度的二值圖像的類,QBitmap提供的單色圖像,可以用來(lái)制作游標(biāo)(QCursor),或者筆刷(QBrush)

簡(jiǎn)單繪圖板實(shí)例

# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QPainter, QPixmap
from PyQt5.QtCore import Qt, QPoint
class Winform(QWidget):
def __init__(self, parent=None):
super(Winform, self).__init__(parent)
#設(shè)置標(biāo)題
self.setWindowTitle("繪圖例子")
#實(shí)例化QPixmap類
self.pix = QPixmap()
#起點(diǎn),終點(diǎn)
self.lastPoint = QPoint()
self.endPoint = QPoint()
#初始化
self.initUi()
def initUi(self):
# 窗口大小設(shè)置為600*500
self.resize(600, 500)
# 畫布大小為400*400,背景為白色
self.pix = QPixmap(400, 400)
self.pix.fill(Qt.white)
def paintEvent(self, event):
pp = QPainter(self.pix)
# 根據(jù)鼠標(biāo)指針前后兩個(gè)位置繪制直線
pp.drawLine(self.lastPoint, self.endPoint)
# 讓前一個(gè)坐標(biāo)值等于后一個(gè)坐標(biāo)值,
# 這樣就能實(shí)現(xiàn)畫出連續(xù)的線
self.lastPoint = self.endPoint
painter = QPainter(self)
#繪制畫布到窗口指定位置處
painter.drawPixmap(0, 0, self.pix)
def mousePressEvent(self, event):
# 鼠標(biāo)左鍵按下
if event.button() == Qt.LeftButton:
self.lastPoint = event.pos()
self.endPoint = self.lastPoint
def mouseMoveEvent(self, event):
# 鼠標(biāo)左鍵按下的同時(shí)移動(dòng)鼠標(biāo)
if event.buttons() and Qt.LeftButton:
self.endPoint = event.pos()
# 進(jìn)行重新繪制
self.update()
def mouseReleaseEvent(self, event):
# 鼠標(biāo)左鍵釋放
if event.button() == Qt.LeftButton:
self.endPoint = event.pos()
# 進(jìn)行重新繪制
self.update()
if __name__ == "__main__":
app = QApplication(sys.argv)
form = Winform()
form.show()
sys.exit(app.exec_())

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)頁(yè)名稱:pythonGUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5簡(jiǎn)單繪圖板實(shí)例與代碼分析-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://muchs.cn/article34/csjgse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷型網(wǎng)站建設(shè)、服務(wù)器托管、小程序開(kāi)發(fā)、靜態(tài)網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作