我正在研究qt中的一个项目。我想在触发按钮后添加文本框和标签。我在QWidgets工作。我怎样才能做到这一点。请帮我完成任务。我搜索并获得了如何在单击按钮时在文本中添加文本,但我想要的是在单击按钮时添加文本框本身。在Triggring菜单项文本框之后应该添加。但无法找到如何做到这一点。
答案 0 :(得分:1)
这是:
mainwindow.cpp
#include "mainwindow.h"
#include <QHBoxLayout>
#include <QPushButton>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
this->setCentralWidget(new QWidget());
m_layout = new QHBoxLayout();
this->centralWidget()->setLayout(m_layout);
QPushButton * button = new QPushButton("Add another Button");
QObject::connect(button, SIGNAL(clicked()), this, SLOT(on_buttonClick()));
m_layout->addWidget(button);
}
MainWindow::~MainWindow()
{
}
void MainWindow::on_buttonClick()
{
m_layout->addWidget(new QPushButton("New Button"));
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QHBoxLayout>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
public slots:
void on_buttonClick();
private:
QHBoxLayout * m_layout;
};
#endif // MAINWINDOW_H
的main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
希望有所帮助。