본문 바로가기
파이썬 프로그래밍/PyQt5 공부하기

3. PyQt5 기초(툴바, 스타일)

by Majestyblue 2024. 11. 10.

1. 툴바 만들기

07) 툴바 만들기 - PyQt5 Tutorial - 파이썬으로 만드는 나만의 GUI 프로그램 (wikidocs.net)

 

07) 툴바 만들기

![](https://wikidocs.net/images/page/21932/2_7_toolbar_sample.png) - 메뉴(menu)가 어플리케이션에서 사용되는 모든…

wikidocs.net

import sys 
from PyQt5.QtWidgets import *
from PyQt5.QtGui import * 

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        
        #UI 초기화 함수 선언하기
        self.initUI()
        
    def initUI(self):
        self.setWindowTitle("physics Lab")
        self.setGeometry(300, 300, 400, 400) 
        self.setWindowIcon(QIcon("physics.png"))
        
        self.exitAction = QAction(QIcon('exit.png'), 'Exit', parent=self)
        self.exitAction.setShortcut('Ctrl+Q')
        self.exitAction.setStatusTip('Exit application')
        self.exitAction.triggered.connect(self.close)
        
        self.statusBar().showMessage('Ready')
        self.menubar = self.menuBar()
        self.menubar.setNativeMenuBar(False)
        self.filemenu = self.menubar.addMenu('&File')
        self.filemenu.addAction(self.exitAction)
        
        # 툴바 객체를 생성하고 액션 연결하기
        self.toolbar = self.addToolBar('Exit')
        self.toolbar.addAction(self.exitAction)
        
  
        btn = QPushButton(text = "동영상 열기", parent = self)
        btn.move(10, 60)
        btn.clicked.connect(self.open_movie)
        
        btn2 = QPushButton(text = "프로그램 종료", parent = self)
        btn2.move(290, 60)
        btn2.clicked.connect(self.close)

    def open_movie(self):
        print("동영상 불러오기를 성공하였습니다.")

app = QApplication(sys.argv)
win = MyWindow()
win.show()
app.exec_()

 

 

 

2. 스타일 변경

import sys 
from PyQt5.QtWidgets import *
from PyQt5.QtGui import * 

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
    def initUI(self):
        self.setWindowTitle("physics Lab")
        self.setGeometry(300, 300, 400, 400) 
        self.setWindowIcon(QIcon("physics.png"))
        
        self.exitAction = QAction(QIcon('exit.png'), 'Exit', parent=self)
        self.exitAction.setShortcut('Ctrl+Q')
        self.exitAction.setStatusTip('Exit application')
        self.exitAction.triggered.connect(self.close)
        
        self.statusBar().showMessage('Ready')
        self.menubar = self.menuBar()
        self.menubar.setNativeMenuBar(False)
        self.filemenu = self.menubar.addMenu('&File')
        self.filemenu.addAction(self.exitAction)
        
        self.toolbar = self.addToolBar('Exit')
        self.toolbar.addAction(self.exitAction)
        
        
        btn = QPushButton(text = "동영상 열기", parent = self)
        # 글자 빨간색, 경계선 실선, 경계선 두께 2px, 경계선 색, 경계선 모서리
        btn.setStyleSheet("color: red;"
                          "border-style: solid;"
                          "border-width: 2px;"
                          "border-color: #FA8072;"
                          "border-radius: 3px")
        btn.move(10, 60)
        btn.clicked.connect(self.open_movie)
        
        btn2 = QPushButton(text = "프로그램 종료", parent = self)
        btn2.move(290, 60)
        btn2.clicked.connect(self.close)

    def open_movie(self):
        print("동영상 불러오기를 성공하였습니다.")

app = QApplication(sys.argv)
win = MyWindow()
win.show()
app.exec_()