小编ukl*_*kll的帖子

基本Qt应用程序(QMainWindow)中未显示小部件

我是Qt的新手,我正在用简单的例子做一些练习.

我只是想用一个简单的应用程序来测试我的知识,通过编码,用户在QLineEdit小部件中键入文本,文本将显示在QLabel中.没有必要使它有用.我只是想试试.

在编译应用程序时,我没有错误.但是,打开窗口时,QLabel和QLineEdit窗口小部件不可见.

我的代码在这里:

在window.h

#ifndef WINDOW_H
#define WINDOW_H

#include <QMainWindow>

class QGridLayout;
class QLabel;
class QLineEdit;

class Window : public QMainWindow
{
    Q_OBJECT

public:
    explicit Window(QWidget *parent = 0);

private:
    QGridLayout *mainLayout;
    QLabel *label;
    QLineEdit *lineEdit;
};

#endif // WINDOW_H
Run Code Online (Sandbox Code Playgroud)

Window.cpp

#include "Window.h"
#include <QGridLayout>
#include <QLineEdit>
#include <QLabel>

Window::Window(QWidget *parent)
    : QMainWindow(parent)
{
    mainLayout = new QGridLayout;
    label = new QLabel(tr("Text"));
    lineEdit = new QLineEdit;

    mainLayout->addWidget(label, 0, 0);
    mainLayout->addWidget(lineEdit, 1, 0);
    setLayout(mainLayout);

    connect(lineEdit, SIGNAL(textChanged(QString)),
            label, SLOT(setText(QString)));
}
Run Code Online (Sandbox Code Playgroud)

main.cpp中 …

user-interface qt qwidget qmainwindow

3
推荐指数
2
解决办法
2291
查看次数

标签 统计

qmainwindow ×1

qt ×1

qwidget ×1

user-interface ×1