2010-07-06 11 views
0

J'ai une liste de liste rempli d'éléments. Par défaut, le 0ème élément sera sélectionné.S'il vous plaît laissez-moi savoir son un comportement de fonctionnalité ou non

Si j'essaie de naviguer dans la liste à l'aide du clavier mobile, cela ne me permet pas de me concentrer - au lieu de cela, je dois utiliser ma touche de sélection mobile pour la mise au point. Dans ce processus, ma touche de fonction gauche mobile est remplacée par "Terminé". Pourquoi le menu "Terminé" apparaît-il?

Comment puis-je fournir le focus par défaut à la liste? Et comment puis-je éviter l'affichage de "Terminé" sur la touche de fonction gauche?

Voici mon code:

#include "Test_Doco.h" 

#include <QtGui> 
#include <QApplication> 

int main(int argc, char *argv[]) 
{ 
    QApplication a(argc, argv); 

    QListView *listui = new QListView(); 
    listui->setSelectionMode(QAbstractItemView::SingleSelection); 

    listui->viewport()->setFocusPolicy(Qt::WheelFocus); 
    listui->viewport()->setFocus(); 

    QStandardItemModel* listModel = new QStandardItemModel(); 

    for(int i =0; i<10;i++) 
      { 
       QStandardItem *item1 = new QStandardItem("AOL"); 
       listModel->appendRow(item1); 
      } 
     QModelIndex index = listModel->index(0,0); 
     listui->setCurrentIndex(index); 


    listui->setModel(listModel); 
    listui->showMaximized(); 

     return a.exec(); 
} 

Edit: J'ai mis à jour le code. S'il te plaît vérifie le.

Répondre

0

La question est Qt 4.6.2 et wrt la question est fixé dans Qt 4.6.3

0

Pour la mise au point par défaut, arrêtez d'appeler le listui->viewport()->setFocus(); et appelez le listui->setFocus() pour le mettre en évidence lors de sa création. Comme pour l'affichage de "Terminé", je ne suis pas sûr, mais vous devrez peut-être poster plus de code pour afficher la boîte de dialogue que vous créez. La plupart ont un ensemble de boutons par défaut ou un bouton défini par défaut. La touche "Terminé" pourrait être liée à cela. Comme vu here "Quitter" est la touche programmable montrée.

+0

Salut, merci je l'ai mis à jour le code, s'il vous plaît voir le code ci-dessus en plaçant dans votre éditeur, où suis-je manque S'il vous plaît dites .. – Naruto

+0

Oh, vous n'utilisez pas une boîte de dialogue, vous avez juste le widget. J'ai oublié que c'est commun pour les appareils mobiles. Que se passe-t-il lorsque vous cliquez sur "Terminé"? –

+0

Merci de montrer de l'intérêt sur cette question, une bonne nouvelle que je voudrais dire, c'est un problème connu dans Qt 4.6.2 et le problème est résolu dans la nouvelle version de Qt soit Qt 4.6.3 .. Merci encore, avoir un merveilleuse soirée – Naruto