mut
27th June 2014, 16:37
Hello;
I'm writing Qt widget application. I'm having a QTreeView located on a QTabWidget, this QTabWidget itself located on my QMainWindow.
This following code does not give me the correct selected index when called from QMainWindow method:
QModelIndex CurrentIndex = ui->MyTreeView->currentIndex();
Which one of the four followings approach should I use:
1)
QModelIndexList indexes = ui->MyTreeView->selectionModel()->selection().indexes();
// then capture the particular index in a loop
2)
QModelIndex currentIndex = ui->MTreeView->selectionModel()->currentIndex();
3)
QModelIndex CurrentIndex = ui->MreeView->currentIndex();
4)
void Parent::slot_MyTreeView_selectionChanged()
{
m_SelectedIndex= ui->MyTreeView->currentIndex();
}
Which one is the best?
Is my problem a focus problem?
Should I capture QTreeView selected index only when the QTreeView is visible and my mouse is on it (I'm asking this because sometimes the problematic code works fine)?
I'm writing Qt widget application. I'm having a QTreeView located on a QTabWidget, this QTabWidget itself located on my QMainWindow.
This following code does not give me the correct selected index when called from QMainWindow method:
QModelIndex CurrentIndex = ui->MyTreeView->currentIndex();
Which one of the four followings approach should I use:
1)
QModelIndexList indexes = ui->MyTreeView->selectionModel()->selection().indexes();
// then capture the particular index in a loop
2)
QModelIndex currentIndex = ui->MTreeView->selectionModel()->currentIndex();
3)
QModelIndex CurrentIndex = ui->MreeView->currentIndex();
4)
void Parent::slot_MyTreeView_selectionChanged()
{
m_SelectedIndex= ui->MyTreeView->currentIndex();
}
Which one is the best?
Is my problem a focus problem?
Should I capture QTreeView selected index only when the QTreeView is visible and my mouse is on it (I'm asking this because sometimes the problematic code works fine)?