QToolbar на mac не может быть унифицирован даже после установки флага setUnifiedTitleAndToolBarOnMac - PullRequest
0 голосов
/ 27 марта 2012

Это проблема Mac OS QT,

Я создал QMainWindow и добавил к нему панель инструментов.

после установки флага " setUnifiedTitleAndToolBarOnMac " в значение ИСТИНА моя панель инструментов была объединена с моим главным окном.

Но , когда я настраиваю кнопки окна , такие как опция только кнопки закрытия,

мое окно Панель инструментов отсоединилась от строки заголовка , как будто она выглядит как панель инструментов Winodow OS

не похож на родной Mac.

Прикрепил мой тестовый код ниже, который находится в pyqt.

Надеюсь, кто-то знает, как этого добиться.

Спасибо

from PyQt4 import QtGui
from PyQt4 import QtCore

class Ui_windo(QtGui.QMainWindow):

    def __init__(self,parent=None):
        QtGui.QMainWindow.__init__(self, parent)

        self.setObjectName("windo")
        self.resize(400, 300)
        self.setWindowTitle(QtGui.QApplication.translate("window", "window", None, QtGui.QApplication.UnicodeUTF8))

        self.b1 = QtGui.QToolButton()
        self.b1.setToolButtonStyle(QtCore.Qt.ToolButtonTextOnly)
        self.b1.setText('Test')
        self.b1.setObjectName("b1")
        self.b1.setCheckable(True)

        _toolBar = self.addToolBar('test')
        _toolBar.setMovable(False)
        _toolBar.addWidget(self.b1)
        self.setUnifiedTitleAndToolBarOnMac(True);
        _windowButtons = QtCore.Qt.Window| QtCore.Qt.WindowCloseButtonHint | QtCore.Qt.CustomizeWindowHint
        self.setWindowFlags(_windowButtons)


if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    ui = Ui_windo()
    ui.show()
    sys.exit(app.exec_())

1 Ответ

0 голосов
/ 28 марта 2012

Похоже, что флаг Qt.CustomizeWindowHint удаляет стили с панели инструментов. Не уверен, что это ожидаемое поведение или ошибка. Было несколько сообщений об ошибках, связанных со стилем, относящихся к setUnifiedTitleAndToolBarOnMac. Вы должны опубликовать его, чтобы подтвердить, ожидаемо оно или нет.

https://bugreports.qt -project.org / безопасный / IssueNavigator.jspa

Если вы установите для своего флага окна значение Qt.Tool, это по крайней мере приблизит вас к удалению кнопки сворачивания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...