2013-04-23 12 views

Odpowiedz

2

Użyj sygnału currentRowChanged(const QModelIndex & current, const QModelIndex & previous) z modelu wyboru (docs).

2

oglądnąć QAbstractItemView DOKUMENTACJA https://qt-project.org/doc/qt-4.7/qabstractitemview.html

nieważne QAbstractItemView aktywowane (const QModelIndex & Index) [sygnału]

Sygnał emitowany jest gdy element określony przez wskaźnik jest aktywowany przez użytkownika. Sposób aktywacji przedmiotów zależy od platformy; np. przez jedno- lub dwukrotne kliknięcie elementu lub naciśnięcie klawisza Enter lub Return przy wprowadzaniu pozycji.

I używać QModelIndex :: wiersz()

+1

Aktywacja to nie to samo, co wybór. – cmannett85

3

Można to zrobić w ten sposób:

connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)), 
      SLOT(slotSelectionChange(const QItemSelection &, const QItemSelection &)) 
      ); 

A gniazdo byłoby:

void MainWindow::slotSelectionChange(const QItemSelection &, const QItemSelection &) 
{ 
      QModelIndexList selection = ui->tableView->selectionModel()->selectedRows();//Here you are getting the indexes of the selected rows 

      //Now you can create your code using this information 
} 

Mam nadzieję, że to możliwe pomóc Ci.

Powiązane problemy