QLabel 设置文字方向向右
主要是想就是重新绘制文字,首相自定义类继承QLabel,然后在类里重新实现paintEvent(QPaintEvent *event)函数
头文件 .h
class My_label: public QLabel
{
Q_OBJECT
public:
explicit My_label(QWidget *parent = nullptr);
~My_label();
void paintEvent(QPaintEvent * event);
void setString(QString string);
QString m_string;
};
源文件 .cpp
My_label::My_label(QWidget *parent) :
QLabel(parent)
{
}
My_label::~My_label()
{
}
void My_label::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
int x = this->width()-20;
int y = ( this->height() -10);
painter.rotate(90);
painter.drawText(y-(y-10), -1, m_string);
}
void My_label::setString(QString string)
{
m_string = string;
update();
}
之后将这个两个文件添加到自己的工程里就可以使用了