Comment définir un élément dans un QListWidget comme étant initialement mis en surbrillance?

StackOverflow https://stackoverflow.com//questions/23065151

  •  26-12-2019
  •  | 
  •  

Question

J'utilise qt 5.2 et j'ai une sorcière QlistWidget affiche une liste de chaînes et je souhaite que le premier élément (à 0) soit initialement défini pour être mis en surbrillance.J'ai essayé ce qui suit:

mUi->listWidget->setCurrentRow(0);
    mUi->listWidget->setCurrentItem(mUi->listWidget->item(0),QItemSelectionModel::Select);
    mUi->listWidget->currentItem()->setSelected(true);
    mUi->listWidget->selectionModel()->select(mUi->listWidget->model()->index(0,0, QModelIndex()),QItemSelectionModel::Select); 

Même si si l'élément est sélectionné, il n'est pas mis en surbrillance.Si bien, je navigue à l'élément à l'aide de la souris (clic) ou du clavier (touche Tab), il est mis en surbrillance mais je veux qu'il soit mis en surbrillance initialement sans utiliser la souris ou le clavier.Comment faire?Merci d'avance.

Était-ce utile?

La solution

Il vous suffit de définir la mise au point de la liste:

if (ui->listWidget->count() > 0) {
  ui->listWidget->item(0)->setSelected(true);
}
ui->listWidget->setFocus();

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top