Pyqt вкладки, как в Google Chrome - PullRequest
       13

Pyqt вкладки, как в Google Chrome

3 голосов
/ 03 сентября 2010

Я бы хотел, чтобы у моего приложения pyqt были вкладки в строке меню, такие как Google Chrome :)

Любые предложения или простой пример того, как это сделать?

Я нашел эти ссылки:
- http://ivan.fomentgroup.org/blog/2009/03/29/instant-chrome/

Ответы [ 3 ]

3 голосов
/ 28 сентября 2010

Для этого вы должны использовать Qt.FramelessWindowHint, а затем создать свои собственные кнопки Max, Min, Close в качестве виджетов и добавить их туда. У меня есть хороший рабочий инструментарий для следующих программ: http://traipse.assembla.com/spaces/ghostqt

В вашем случае вы должны переклассифицировать resizeEvent, чтобы вы могли изменить флаги. Если окно развернуто, вам не нужно беспокоиться о его перемещении, но если оно не развернуто, вы можете удалить флаг Qt.FramelessWindowHint и вернуть строку заголовка; как и в Chrome.

Это то, что вы ищете?

2 голосов
/ 29 сентября 2010

вам нужно сделать следующее:

  • удалить границу окна (FramelessWindowHint)
  • Реализация собственного кода перемещения и изменения размера окна
  • Вставить панель вкладок сверху и добавить к ней кнопки для закрытия и т. Д. (Или создать рамку, которая будет содержать панель вкладок и кнопки)

И это все, что было сделано в Webbie (ссылка, которую вы предоставили) :)

2 голосов
/ 03 сентября 2010

Если я правильно понимаю, просто создайте QWindow, содержащий виджет QTabBar (а не QMenuBar), или просто используйте QTabWidget в качестве основного виджета программы.

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