모두의 프로그램 - 예제로 배우는 PyQt 프로그래밍

예제 중심으로 배우는 PyQt 프로그래밍

모두의 프로그램 - 예제로 배우는 PyQt 프로그래밍 예제 중심으로 배우는 PyQt 프로그래밍

QAction

QtWidgets::QAction

요약

  • QAction은 메뉴바, 툴바버튼 등의 위젯에 장착이 가능한 사용자 인터페이스이다.
  • 아이콘과 단축키등을 정의 할 수 있다.

예제

import sys
from PyQt5 import QtWidgets
from PyQt5 import uic
from PyQt5.QtCore import pyqtSlot


class Form(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        QtWidgets.QMainWindow.__init__(self, parent)
        self.ui = uic.loadUi("ui.ui", self)

    def init_ui(self):
        pass

    @pyqtSlot()
    def slot_open(self):
        fdial = QtWidgets.QFileDialog(self)
        fdial.setAcceptMode(QtWidgets.QFileDialog.AcceptOpen)
        file_name = fdial.getOpenFileName(self, '파일열기', filter='*.txt')[0]
        if file_name == '':
            return
        fd = open(file_name, 'r')
        buf = fd.read()
        fd.close()
        self.ui.textEdit.clear()
        self.ui.textEdit.insertPlainText(buf)

    @pyqtSlot()
    def slot_save(self):
        buf = self.ui.textEdit.toPlainText()
        fdial = QtWidgets.QFileDialog(self)
        fdial.setAcceptMode(QtWidgets.QFileDialog.AcceptSave)
        file_name = fdial.getSaveFileName(self, '파일저장', filter='*.txt')[0]
        if file_name == '':
            return
        fd = open(file_name, 'w')
        fd.write(buf)
        fd.close()



if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    w = Form()
    w.show()
    sys.exit(app.exec())

 

댓글

댓글 본문
작성자
비밀번호
graphittie 자세히 보기