Thanks jpn, sibling was what I need (I'm italian so sometimes i don't understand the use of a function from its name: I had no idea of what was simling; after you pointed me to it I have recovered a thesaurus to get the meaning of that word and discovered that it was the function I was searching for).

Now the final code:

Qt Code:
  1. void MainDialog::showPreviuosTitle()
  2. {
  3. QModelIndex mi = listView->currentIndex();
  4. if(mi.row() > 0) {
  5. listView->setCurrentIndex(mi.sibling(mi.row()-1,mi.column()));
  6. viewTitle(listView->currentIndex());
  7. }
  8. }
  9.  
  10. void MainDialog::showNextTitle()
  11. {
  12. QModelIndex mi = listView->currentIndex();
  13. if(mi.row() < listView->model()->rowCount() - 1) {
  14. listView->setCurrentIndex(mi.sibling(mi.row()+1,mi.column()));
  15. viewTitle(listView->currentIndex());
  16. }
  17. }
To copy to clipboard, switch view to plain text mode 

Thanks