Skip to content

Commit 566f75e

Browse files
committed
fix mac下最小化问题 #165
1 parent 84f3a7e commit 566f75e

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

Demo/NewFramelessWindow.py

+14-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
@description:
1111
"""
1212

13+
import sys
14+
1315
try:
1416
from PyQt5.QtCore import QTimer, Qt, QEvent, QObject
1517
from PyQt5.QtGui import QWindow, QPainter, QColor, QMouseEvent
@@ -138,6 +140,18 @@ def __init__(self, *args, **kwargs):
138140
self.buttonClose.clicked.connect(self.close)
139141
self.setStyleSheet('#widgetTitleBar{background: rgb(232, 232, 232);}')
140142

143+
def showMinimized(self):
144+
flags = self.windowFlags()
145+
if sys.platform == 'darwin':
146+
# fix mac 最小化失效问题
147+
self.setWindowFlags((self.windowFlags() | Qt.CustomizeWindowHint) &
148+
(~Qt.WindowTitleHint))
149+
super(FramelessWindow, self).showMinimized()
150+
if sys.platform == 'darwin':
151+
# fix mac 最小化失效问题
152+
self.setWindowFlags(flags)
153+
self.show()
154+
141155
def changeEvent(self, event):
142156
"""窗口状态改变
143157
:param event:
@@ -161,7 +175,6 @@ def paintEvent(self, event):
161175

162176

163177
if __name__ == '__main__':
164-
import sys
165178
import cgitb
166179

167180
cgitb.enable(format='text')

0 commit comments

Comments
 (0)