【发布时间】:2012-09-23 11:20:26
【问题描述】:
我有一个 QLineEdit、2 个 QPushButtons(添加和删除按钮)和一个 QListView。 单击添加按钮时,我想将 QLineEdit 文本添加到 QListView。同样,如果单击删除按钮,我必须从 QListView 中删除一个项目。 我正在使用 QStringListModel 将 QLineEdit 文本添加到 QListView。但我不知道如何删除 QListView 项。我怎样才能做到这一点?请帮助.. 提前致谢。
#ifndef EXAMPLE_H
#define EXAMPLE_H
#include <QWidget>
#include <QStringList>
#include <QStringListModel>
class EXAMPLE : public QWidget
{
Q_OBJECT
public:
explicit EXAMPLE(QWidget *parent = 0);
~EXAMPLE();
private slots:
void on_addButton_released();
void on_removeButon_released();
private:
Ui::EXAMPLE *ui;
QStringList stringList;
};
#endif // EXAMPLE_H
EXAMPLE.CPP
#include "EXAMPLE.h"
#include <QStringListModel>
EXAMPLE::EXAMPLE(QWidget *parent) :
QWidget(parent),
ui(new Ui::EXAMPLE)
{
ui->setupUi(this);
ui->listView->setModel(new QStringListModel(stringList));
}
EXAMPLE::~EXAMPLE()
{
delete ui;
}
void EXAMPLE::on_addButton_released()
{
stringList.append(ui->lineEdit->text());
((QStringListModel*) ui->listView->model())->setStringList(stringList);
ui->lineEdit->clear();
}
void EXAMPLE::on_removeButon_released()
{
}
【问题讨论】:
-
当按下删除按钮时,您要删除当前选中的一项,最后一项,还是其他一项?
-
我要删除当前选中的项目。
标签: qt qt4.7 qlistview qlineedit