Пожалуйста, дайте мне знать, это функциональное поведение или нет - PullRequest
0 голосов
/ 06 июля 2010

У меня есть список, заполненный элементами. По умолчанию будет выбран 0-й элемент.

Если я пытаюсь перемещаться по списку с помощью мобильной клавиатуры, он не получает фокуса - вместо этого мне нужно использовать мобильную клавишу выбора для фокусировки. В этом процессе моя левая софт-клавиша мобильного телефона меняется на «Готово». Почему появляется меню «Готово»?

Как предоставить фокус по умолчанию для просмотра списка? И как мне избежать отображения «Готово» на левой софт-клавише?

Вот мой код:

#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();
}

Редактировать: я обновил код. Пожалуйста, проверьте это.

Ответы [ 2 ]

0 голосов
/ 07 июля 2010

Проблема с w.r.t Qt 4.6.2, и проблема исправлена ​​в Qt 4.6.3

0 голосов
/ 06 июля 2010

Для фокусировки по умолчанию прекратите звонить listui->viewport()->setFocus(); и наберите listui->setFocus(), чтобы выделить его при создании.

Что касается отображения «Готово», я не слишком уверен, новам может потребоваться опубликовать больше кода, чтобы показать диалог, который вы создаете.Большинство из них имеют набор кнопок по умолчанию или набор кнопок по умолчанию.Клавиша «Готово» может быть связана с этим.Как видно здесь"Выход" - это показанная функциональная клавиша.

...