目的:在界面上点击按钮,弹出QListWidget对象,随后利用TAB键切换选择
按钮对应的槽函数为:
void PhoneWidget::GetSelect(void)
{
selectList = new QListWidget(this);
selectList->setGeometry(QRect(0, 100, 320, 120));
selectList->setFixedSize(QSize(320, 120));
QPixmap pixmap(":/BG/image/select.png");
QPalette palette = selectList->palette();
palette.setBrush(backgroundRole(), QBrush(pixmap));
selectList->setPalette(palette);
//selectList->setFocusPolicy(Qt::TabFocus);
//selectList->setAlternatingRowColors(true);
selectList->setFocus();
selectList->addItem(QString::fromUtf8("查看"));
selectList->addItem(QString::fromUtf8("发送"));
selectList->addItem(QString::fromUtf8("删除"));
selectList->addItem(QString::fromUtf8("添加"));
selectList->show();
selectList->setCurrentRow(0);
}
发现问题:编译运行没问题,可 1:背景图无效, 2:第一个被选择,tab键不能切换
3:如何实现TAB键切换选择项,enter键选择然后调用对应槽函数,不通过鼠标
谢谢!
刚注册,没啥积分
------解决方案--------------------------------------------------------
接收一个键盘事件,判断是你需要的键。就好了。