PyQt5 缩放图片 案例
QImage.scaled
import sys
from PyQt5.QtCore import Qt, QTimer
from PyQt5.QtGui import QIcon, QBitmap, QPainter, QPixmap, QCursor, QMovie, QImage
from PyQt5.QtWidgets import QHBoxLayout, QPushButton, QMessageBox, QApplication, QVBoxLayout, QWidget, \
QLabel, QGridLayout, QLineEdit, QTextEdit, QFormLayout, QComboBox
'''
PyQt5 缩放图片 案例
QImage.scaled
'''
class ScaleImageDemo(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 设置定位和左上角坐标
# self.setGeometry(300, 300, 360, 260)
# 设置窗口标题
self.setWindowTitle('缩放图片 的演示')
# 设置窗口图标
# self.setWindowIcon(QIcon('../web.ico'))
filename = 'Black.png'
img = QImage(filename)
label1 = QLabel(self)
label1.setToolTip('这是一个文本标签')
label1.setStyleSheet('QLabel{border-image:url(a.gif)}')
label1.setFixedWidth(200)
label1.setFixedHeight(200)
# 按照label1的尺寸缩放图片
result = img.scaled(label1.width(),label1.height(),Qt.IgnoreAspectRatio,Qt.SmoothTransformation)
label1.setPixmap(QPixmap.fromImage(result))
vbox = QVBoxLayout()
vbox.addWidget(label1)
self.setLayout(vbox)
def mousePressEvent(self,event):
# 左击
if event.button() == Qt.LeftButton:
print(event.globalPos())
print(event.pos())
print(self.pos())
# 右击
if event.button() == Qt.RightButton:
self.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
# 设置应用图标
app.setWindowIcon(QIcon('../web.ico'))
w = ScaleImageDemo()
w.show()
sys.exit(app.exec_())