我是Qt和C ++的新手,正在开发应用程序,我正在尝试使用QHBoxLayout在QWidget中添加QLabel。 我将标签文本设置为某些内容但在标签中不可见。
这是代码片段:
setStyleSheet( "QWidget{ background-color : rgba( 160, 160, 160, 255); border-radius : 7px; }" );
QLabel *label = new QLable(this);
QHBoxLayout *layout = new QHBoxLayout();
label->setText("Random String");
layout->addWidget(label);
setLayout(layout);
styleSheet用于添加QLabel的Widget。
字符串" random String"没有显示在标签内。
请帮助。
答案 0 :(得分:5)
您的代码有拼写错误,QLabel
,不 QLable
...
假设这会在编译时通知您,我没有看到代码有什么问题,也许您可以与我们分享更多的项目......
我对这堂课进行了一次小测试:
mynewwidget.h
#ifndef MYNEWWIDGET_H
#define MYNEWWIDGET_H
#include <QWidget>
class MyNewWidget : public QWidget
{
Q_OBJECT
public:
explicit MyNewWidget(QWidget *parent = 0);
};
#endif // MYNEWWIDGET_H
mynewwidget.cpp
#include "mynewwidget.h"
#include <QHBoxLayout>
#include <QLabel>
MyNewWidget::MyNewWidget(QWidget *parent) :
QWidget(parent)
{
setStyleSheet( "QWidget{ background-color : rgba( 160, 160, 160, 255); border-radius : 7px; }" );
QLabel *label = new QLabel(this);
QHBoxLayout *layout = new QHBoxLayout();
label->setText("Random String");
layout->addWidget(label);
setLayout(layout);
}
结果是
我认为这就是你想要的......