PyQt/QProxyStyle/README.md

25 lines
953 B
Markdown
Raw Normal View History

2018-12-27 16:01:51 +08:00
# QProxyStyle
2019-03-12 12:47:56 +08:00
- 目录
2019-05-22 11:07:42 +08:00
- [QTabWidget Tab文字方向](#1qtabwidget-tab文字方向)
2021-06-24 00:02:24 +08:00
- [QTabWidget 角落控件位置](#2qtabwidget-角落控件位置)
2019-03-12 12:47:56 +08:00
2018-12-27 16:01:51 +08:00
## 1、QTabWidget Tab文字方向
[运行 TabTextDirection.py](TabTextDirection.py)
1. 通过 `app.setStyle(TabBarStyle())` 设置代理样式
2. `sizeFromContents` 转置size
3. `drawControl` 绘制文字
2021-06-24 00:02:24 +08:00
![TabTextDirection](ScreenShot/TabTextDirection.png)
## 2、QTabWidget 角落控件位置
[运行 TabCornerWidget.py](TabCornerWidget.py)
1. 通过 `app.setStyle(TabCornerStyle())` 设置代理样式
2. `setCornerWidget` 设置自定义角落控件
原理是通过代理样式中对 `SE_TabWidgetRightCorner` 计算的结果进行校正,使得角落控件占满右边空白位置,
然后再配合自定义控件中使用 `QSpacerItem` 占据右边位置使得 + 号按钮居左,表现效果为 + 号按钮跟随标签的增加和减少
![TabCornerStyle](ScreenShot/TabCornerStyle.png)