我有一个填充项目的列表视图。默认情况下,将选择第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();
}
编辑:我已更新代码。请检查一下。
答案 0 :(得分:0)
对于默认焦点,请停止致电listui->viewport()->setFocus();
并致电listui->setFocus()
,以便在创建时为焦点。
至于“完成”的显示,我不太确定,但您可能需要发布更多代码来显示您正在创建的对话框。大多数都有一组默认按钮或设置为默认的按钮。 “完成”键可能与此相关。如图所示here“退出”是显示的软键。
答案 1 :(得分:0)
问题是wt.t Qt 4.6.2,问题在Qt 4.6.3
中得到修复