QTabWidget设置为垂直方向时 实现文本内容为水平方向
来源:互联网 发布:excel如何制作数据库 编辑:程序博客网 时间:2024/06/05 04:57
利用 QProxyStyle设置QtabWidget的样式。
1.h文件
#ifndef TABWIDGET_H
#define TABWIDGET_H
#include <QTabWidget>
#include <QTabBar>
#include <QProxyStyle>
#include <QPainter>
#include <QStyleOption>
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.rwidth()=70;
s.rheight()=70;
}
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))
{
QStyleOptionTab opt(*tab);
opt.shape = QTabBar::RoundedNorth;
//opt.text = tr("Hello");
//QIcon icon(":/Resources/icon2.ico");
//opt.icon = icon;
opt.palette.setCurrentColorGroup(QPalette::Disabled);
opt.state |= QStyle::State_Sunken;
QProxyStyle::drawControl(element, &opt, painter, widget);
return;
}
}
QProxyStyle::drawControl(element, option, painter, widget);
}
};
class tabwidget : public QTabWidget
{
Q_OBJECT
public:
tabwidget(QObject *parent = NULL);
~tabwidget();
private:
};
#endif // TABWIDGET_H
2.cpp文件
#include "tabwidget.h"
tabwidget::tabwidget(QObject *parent)
{
QTabBar *bar = new QTabBar;
bar->setStyle(new CustomTabStyle);
setTabBar(bar);
QWidget *w = new QWidget;
bar->addTab(QIcon(""),"123");
w = new QWidget;
bar->addTab(QIcon(""),"9");
}
tabwidget::~tabwidget()
{
}
3.效果如下
- QTabWidget设置为垂直方向时 实现文本内容为水平方向
- QTabWidget设置为垂直方向时 文本如何设置为水平方向
- QT之QTabWidget 为West方向时实现文字垂直显示
- QTabWidget的tabposition为west时,改变tab文字方向为从上到下
- constraintsWithVisualFormat:参数为NSString型,指定Contsraint的属性,是垂直方向的限定还是水平方向的限定,参数定义一般如下: V:|-(>=XXX) :表
- css实现文字水平方向垂直方向同时居中的方式
- 关于图片与文字在一行显示时,文本的垂直方向位置的设置
- 自定义View实现文本水平方向的跑马灯效果
- AndroidGUI23:水平方向和垂直方向同时滚动
- css样式-td背景图,水平方向、垂直方向居中
- android 图片垂直方向( ScrollView) ,水平方向HorizontalScrollView 滚动
- CSS控制DIV水平垂直方向剧中
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- 禁止UIScrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- 禁止UIScrollView垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- linux下如何用c语言调用shell命令
- Git 常见命令
- 如何配置https站点
- Hibernate的XML和annotation两种方式简单例子
- http
- QTabWidget设置为垂直方向时 实现文本内容为水平方向
- 什么是构造函数注入(Constructor Injection)——一个具体的依赖注入例子
- JAVA反射详解
- IOS开发之—绘图
- js监听window的刷新和关闭
- 设计模式之装饰者(java)
- 编程之路 一
- 对正则化项L1,L2讲解
- java Exception