c – 将QLabel添加到QWidget

我是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”不会显示在标签内.

请帮忙.

解决方法:

你的代码有拼写错误,它是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);
}

结果是

 

我认为这是你想要的……

上一篇:c – Qt – 清除QWidget布局中的所有小部件


下一篇:c – Qt:enterEvent和leaveEvent不起作用