Qlistview
-
hello i will do a seizure tracking program and i created a listview i log in name and weekday number and weekend number after that i will insert this datas in a list in the qplain text but how can i select from listview and after show it plaintextedit
using namespace std; MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); model =new QStringListModel(this); model2=new QStringListModel(this); model3=new QStringListModel(this); model4=new QStringListModel(this); QStringList list; QStringList list2; QStringList list3; QStringList list4; qsrand(time(NULL)); random = qrand() %30; qDebug()<<random; //list2<<"sayi"<<"sayi"; model->setStringList(list); model2->setStringList(list2); model3->setStringList(list3); model4->setStringList(list4); ui->listView->setModel(model); ui->listView_2->setModel(model2); ui->listView_3->setModel(model3); qDebug()<<model2; ui->listView->setEditTriggers(QAbstractItemView::AnyKeyPressed | QAbstractItemView::DoubleClicked); ui->listView_2->setEditTriggers(QAbstractItemView::AnyKeyPressed | QAbstractItemView::DoubleClicked); ui->listView_3->setEditTriggers(QAbstractItemView::AnyKeyPressed | QAbstractItemView::DoubleClicked); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_add_clicked() { int row = model->rowCount(); int row2 = model2->rowCount(); int row3 = model3->rowCount(); model->insertRows(row,1); model2->insertRows(row2,1); model3->insertRows(row3,1); QModelIndex index=model->index(row); QModelIndex index2=model2->index(row2); QModelIndex index3=model3->index(row3); ui->listView->setCurrentIndex(index); ui->listView_2->setCurrentIndex(index2); ui->listView_3->setCurrentIndex(index3); ui->listView->edit(index); ui->listView_2->edit(index2); ui->listView_3->edit(index3); ui->plainTextEdit->insertPlainText(); }
-
Hi
The listview has a signals for when you click an item.
Like
clicked(const QModelIndex &index)
if you want to take it when clicked.You can also do
QModelIndex index = ui->listView->currentIndex();
QString itemText = index.data(Qt::DisplayRole).toString();
To take the currently selected/active item.If you need more than one selected there is
ui->listView->selectionModel()->selectedIndexes())
which gives a list of all selected indexes. -
hello mrjj, it works fine, thank you for your help
have a good day
-
hello mrjj, it works fine, thank you for your help
have a good day
@veysel.olgun
Hi
same to you.
Please set topic to solved if you are happy with answer. -
i am happy with answer thank you i set topic to solved