【问题标题】:QLineEdit Qt in c++ removing QLineEditC++ 中的 QLineEdit Qt 删除 QLineEdit
【发布时间】:2015-06-20 10:21:17
【问题描述】:

我正在尝试在Qt 中制作地址簿,我正在使用以下代码:

#include "mainwindow.h"
#include "ui_mainwindow.h"

int counter = 1;

MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    QLineEdit* Voornaam = new QLineEdit(this);
    Voornaam->setObjectName(QString::fromUtf8("lineEdit_4"));
    Voornaam->setGeometry(QRect(10, 65+ 33*counter, 113, 24));
    Voornaam->show();

    QLineEdit* Achternaam = new QLineEdit(this);
    Achternaam->setObjectName(QString::fromUtf8("lineEdit_5"));
    Achternaam->setGeometry(QRect(140, 65+ 33*counter, 113, 24));
    Achternaam->show();

    QLineEdit* Adres = new QLineEdit(this);
    Adres->setObjectName(QString::fromUtf8("lineEdit_6"));
    Adres->setGeometry(QRect(270, 65+ 33*counter, 113, 24));
    Adres->show();

    counter+= 1;
}

void MainWindow::on_pushButton_2_clicked()
{
}

正如您在第二个函数中看到的 pushbutton_2_clicked 我还没有放任何东西。 该程序的工作原理如下:每次我按下按钮(第一个功能)时,它都会添加一个QLineEdit。然后它显示在 ui 上。此外,我每次都创建一个新的QLineEdit 并将其向下移动一点,以便获得这些列表。 Voornaam、achternaam 和地址只是我想在我的程序中输入这些QLineEdits 的信息的名称。

我现在想做的是删除这些QLineEdit,但我不知道如何,我在互联网上搜索过,但找不到示例。所以我想删除这些以前制作的QLineEdits。我必须使用名称吗?例如 LineEdit_4。我找到了一个widget函数removewidget,我用这个吗?

有没有办法更轻松地显示这些小部件?现在我只是制作矩形并使用柜台将它们放在彼此下方。

【问题讨论】:

  • 题外话,但我认为counter 也应该是你班的成员。

标签: c++ qt qlineedit


【解决方案1】:

你为什么不使用QTableWidget。您可以从中添加/删除行(如果您愿意,还可以添加列)。然后您使用setCellWidget 函数将QLineEdits 添加到单元格中。

您可以有一个按钮来添加新行。你可以有一个按钮来从表格中删除选定的行。

【讨论】:

  • 谢谢,这样会更容易!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-05
  • 1970-01-01
  • 1970-01-01
  • 2022-06-20
  • 1970-01-01
  • 2010-10-06
相关资源
最近更新 更多