QT之QTabWidget 为West方向时实现文字垂直显示
来源:互联网 发布:韩顺平php视频下载 编辑:程序博客网 时间:2024/06/03 22:13
QTabWidget 设置setTabPosition 为West时,文字垂直显示。
/* 创建工程 作者:七嘉伯 博客地址:http://www.qijiabo.cn QQ:820091856 注:请尊重作者版权*/#ifndef CUSTOMTABSTYLE_H#define CUSTOMTABSTYLE_H#include <QProxyStyle>#include <QPainter>#include <QStyleOptionTab>class CustomTabStyle : public QProxyStyle{public: QSize sizeFromContents(ContentsType type, const QStyleOption *option, const QSize &size, const QWidget *widget) const { QSize s = QProxyStyle::sizeFromContents(type, option, size, widget); if (type == QStyle::CT_TabBarTab) { s.transpose(); s.rheight() = 90; s.rwidth() = 17; } return s; } void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { if (element == CE_TabBarTabLabel) { if (const QStyleOptionTab *tab = qstyleoption_cast<const QStyleOptionTab *>(option)) { QRect allRect = tab->rect; if (tab->state & QStyle::State_Selected) { painter->save(); painter->setPen(0x89cfff); painter->setBrush(QBrush(0x89cfff)); painter->drawRect(allRect.adjusted(1, 3, -1, -6)); painter->restore(); } QTextOption option; option.setAlignment(Qt::AlignCenter); if (tab->state & QStyle::State_Selected) { painter->setPen(0xf8fcff); } else { painter->setPen(0x5d5d5d); } painter->drawText(allRect, tab->text, option); return; } } if (element == CE_TabBarTab) { QProxyStyle::drawControl(element, option, painter, widget); } }};#endif // CUSTOMTABSTYLE_H
源码下载地址:
http://www.qijiabo.cn/2017/07/04/qt%e4%b9%8bqtabwidget-%e4%b8%bawest%e6%96%b9%e5%90%91%e6%97%b6%e5%ae%9e%e7%8e%b0%e6%96%87%e5%ad%97%e5%9e%82%e7%9b%b4%e6%98%be%e7%a4%ba
阅读全文
0 0
- QT之QTabWidget 为West方向时实现文字垂直显示
- QTabWidget的tabposition为west时,改变tab文字方向为从上到下
- QTabWidget设置为垂直方向时 实现文本内容为水平方向
- QTabWidget设置为垂直方向时 文本如何设置为水平方向
- 关于图片与文字在一行显示时,文本的垂直方向位置的设置
- QT之qss教程-QTabWidget
- div层实现文字垂直显示
- CSS垂直方向文字居中
- QTabWidget 改变tabBar位置 并改变文字方向
- UITextView垂直方向上光标和文字显示文字的问题
- css实现文字水平方向垂直方向同时居中的方式
- qt QTabWidget
- QT 多页面切换之QTabWidget
- Qt多页面切换之QTabWidget
- Android TextView 带背景的文字垂直方向显示(ems属性)
- 实现文字垂直居中
- android 中实现任意方向的文字显示
- AO+C++实现文字注记方向为竖直
- opencv分水岭算法分割硬币
- __attribute__((at(0X68000000)))
- javaScript倒计时的实现
- mysql的一个大小写区分的坑
- Redis常用命令
- QT之QTabWidget 为West方向时实现文字垂直显示
- 1141
- C++中对C语言结构体用法的扩充
- axis1.4生成客户端代码
- python,tuple数据类型
- 常见的APP测试用例
- 操作系统内存管理---连续内存分区
- Leetcode-Search for a Range(折半查找)
- 记录:遇到的问题Spring跳转也页面报错404