Qt/PyQt5 강좌

pyQt5로 만든 이미지 뷰어

webnautes 2024. 8. 21. 21:39
반응형

pyQt5로 만든 이미지 뷰어 예제입니다.



2024. 8. 19 최초작성



실행 후,  이미지 선택 버튼을 클릭합니다. 

 



열고자하는 이미지 파일을 선택한 후, 열기 버튼을 클릭합니다.

 



선택한 이미지가 윈도우에 보여집니다.

 





import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel, QVBoxLayout, QFileDialog
from PyQt5.QtGui import QPixmap
from PyQt5.QtCore import Qt

class ImageLoader(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('이미지 로더')
        self.setGeometry(200, 200, 600, 600)

        layout = QVBoxLayout()

        self.button = QPushButton('이미지 선택', self)
        self.button.clicked.connect(self.load_image)
        layout.addWidget(self.button)

        self.image_label = QLabel(self)
        self.image_label.setAlignment(Qt.AlignCenter)
        layout.addWidget(self.image_label)

        self.setLayout(layout)

    def load_image(self):
        fname, _ = QFileDialog.getOpenFileName(self, '이미지 열기', '', 'Image files (*.jpg *.png)')
        if fname:
            pixmap = QPixmap(fname)
            pixmap = pixmap.scaled(500, 500, Qt.KeepAspectRatio, Qt.SmoothTransformation)
            self.image_label.setPixmap(pixmap)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = ImageLoader()
    ex.show()
    sys.exit(app.exec_())

 

반응형