Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 나스닥
- 오블완
- Bestin
- ConnectedHomeIP
- Python
- homebridge
- 현대통신
- 공모주
- esp32
- 매터
- Home Assistant
- matter
- 국내주식
- 힐스테이트 광교산
- 애플
- 파이썬
- 해외주식
- Apple
- 월패드
- 퀄컴
- 미국주식
- 티스토리챌린지
- 배당
- 코스피
- RS-485
- raspberry pi
- 엔비디아
- Espressif
- 홈네트워크
- MQTT
Archives
- Today
- Total
YOGYUI
PyQt5 - QMenuBar location in macOS 본문
반응형
Mac OS에서 PyQt5로 윈도우를 만들어서 메뉴바를 추가하면 default로 상단 작업표시줄에 메뉴바가 표시된다
(테스트 당시 OSX 버전은 11.5.2, PyQt5 버전은 5.15.4)
[테스트 코드]
if __name__ == '__main__':
import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
app = QCoreApplication.instance()
if app is None:
app = QApplication(sys.argv)
window = QMainWindow()
menubar = QMenuBar(window)
window.setMenuBar(menubar)
menu1 = QMenu('Menu1', menubar)
menubar.addAction(menu1.menuAction())
mb1 = QAction('menu 1-1')
menu1.addAction(mb1)
menu2 = QMenu('Menu2', menubar)
menubar.addAction(menu2.menuAction())
mb2 = QAction('menu 2-1')
menu2.addAction(mb2)
window.show()
app.exec_()
메뉴바가 작업표시줄로 옮겨가기 때문에, 평소 Windows OS와 UI가 달라진다
개인적인 느낌인 (워낙에 앱등이인지라) Mac OS의 UX가 훨씬 보기 좋다 ㅎㅎ
(굳이) OS 환경에 상관없이 메뉴바를 동일하게 QMainWindow의 타이틀바 아래에 위치하게 하고 싶다면 QMenuBar의 'nativeMenuBar' 속성을 False로 설정해주면 된다
if __name__ == '__main__':
# ...
window = QMainWindow()
menubar = QMenuBar(window)
window.setMenuBar(menubar)
menubar.setNativeMenuBar(False) # 추가
# ...
반응형
'Software > Python' 카테고리의 다른 글
pandas - 중복된 요소 넘버링하기 (0) | 2021.12.15 |
---|---|
pandas - 데이터프레임 데이터형(dtype) 확인 (0) | 2021.09.21 |
PyQt5 - QtWebEngine Chromium Version 확인하기 (0) | 2021.09.10 |
PyQt5 - QtWebEngine::웹브라우저 만들기 (3) (0) | 2021.09.06 |
PyQt5 - QtWebEngine::웹브라우저 만들기 (2) (0) | 2021.09.05 |