Выделяются только строки, так как:
table->setSelectionBehavior(QAbstractItemView::SelectRows);
Если выбрать одну - все нормально. Выделить мышкой несколько, или с шифтом - тоже нормально.
А если выделять строки через Ctrl+ЛКМ - оно понимает количество выделенных строк, но значения в них только из первой выделенной.
Пример:
Ну... супер!!!
ЗЫ.
Вопрос-то где? ))
Вопрос в том, что
List<QTableWidgetItem *> selectedList = table->selectedItems();
выдает мне такое вывод
"As Daylight Dies"
"As Daylight Dies"
"As Daylight Dies"
то есть все строки "равны" первой выделенной.
А мне нужно получить номера строк, которые выделены.
ща че-нить отвечу )))))0
------------------------
У себя проверил - все работает как не выделяй. Qt 4.7.1. Покажи код, как именно получаешь текст из selectedList?
MainWindow::MainWindow()
{
connect(table,SIGNAL(itemSelectionChanged()),this,SLOT(on_itemSeletionCahnged()));
}
void MainWindow::on_itemSeletionCahnged()
{
QList<QTableWidgetItem *> selectedList = table->selectedItems();
qDebug()<<"Count:"<<selectedList.count();
qDebug()<<"Row 1:"<<selectedList.at(0)->row();
qDebug()<<"Row 2:"<<selectedList.at(1)->row();
qDebug()<<"Row 4:"<<selectedList.at(2)->row();
}
{
QList<QTableWidgetItem *> selectedList = table->selectedItems();
qDebug()<<"Count:"<<selectedList.count();
QStringList templist1;
for (int i=0; i<selectedList.count()/14; i++)
{
templist1.append(table->item(selectedList.at(i)->row(),0)->text());
qDebug()<<table->item(selectedList.at(i)->row(),0)->text();
}
}
Ну так все правильно ты и получаешь. У тебя selectedList что содержит? Айтемы а не ряды. Тебе нужно цикл по всем айтемам делать, а уже внутри разруливать через continue в случае если колонка айтема - не та, которая тебе нужна.
Я знаю. Ошибка была рядом. Теперь работает.
void MainWindow::on_cellClicked(int row,int)
{
QList<QTableWidgetItem *> selectedList = table->selectedItems();
for (int i=0; i<selectedList.count(); i+=14) //14 - количество столбцов.
{
qDebug()<<selectedList.at(i)->text();
}
}
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)