как выбрать несколько столбцов в QTable

Я работаю в c ++ / ubuntu. Я создал QTable:

  1 | 2
 -------
aaaa|bbbb
cccc|dddd
....|....

Я хотел бы спросить, как я могу выделить всю строку 2: cccc | dddd.

Я сделал:

QModelIndexList indexes = ui->tableView->selectionModel()->selection().indexes();

    for (int i = 0; i < indexes.count(); ++i)

    {
        QModelIndex index = indexes.at(i);

        if (index.isValid())
        {

          QString s=index.data(Qt::DisplayRole).toString();
          QMessageBox noc;
                  noc.setText(s);
                  noc.exec();
        }


    }

Но я вижу, что выбран только элемент cccc.

Ценить. Спасибо, очень много!


person sunset    schedule 25.07.2011    source источник
comment
QTable является устаревшим классом Qt2 | 3. Какой класс вы действительно используете? Уточните, пожалуйста, свой вопрос. Вы хотите выбрать строку программно или вручную, щелкнув по ней? Код, который вы опубликовали, просто отображает выделение, а не пытается что-то выбрать.   -  person Raiv    schedule 25.07.2011


Ответы (2)


Если вы используете Q3Table, есть перечисление для обработки выбора, который устанавливается с помощью этой функции.

Если вы используете QTableView (что рекомендуется), существует аналогичное перечисление и function, чтобы установить его.

Надеюсь, это поможет. Как сказал Райв в своем комментарии, мы можем помочь вам больше, если вы проясните свой вопрос.

person kevlar1818    schedule 25.07.2011

Попробуйте использовать QTableView :: selectedIndexes. Эта функция предназначена для получения выбранных элементов.

person useraged    schedule 25.07.2011