【发布时间】:2015-07-21 19:41:27
【问题描述】:
我正在尝试使用 OpenGL 项目的各种小部件实现 GUI。我有一个用于绘制场景的主要小部件。 OpenGL 小部件与键和鼠标事件相关联,因此焦点应该始终在它上面。我注意到如果我点击一个按钮,那么焦点就会移动到这个按钮,这意味着焦点不再与 OpenGL 小部件相关联。用鼠标单击小部件不会改变焦点。解决方案之一是关闭GUI中除OpenGL小部件以外的所有小部件的焦点,如下所示
ui->processButton->setFocusPolicy(Qt::NoFocus);
ui->quitButton->setFocusPolicy(Qt::NoFocus);
ui->clearButton->setFocusPolicy(Qt::NoFocus);
ui->textEdit->setFocusPolicy(Qt::NoFocus);
ui->groupBox->setFocusPolicy(Qt::NoFocus);
如果我有很多小部件,那么这个解决方案很烦人,尤其是当我稍后添加小部件时。我的问题是有没有解决方案可以将焦点设置在特定的小部件上?
【问题讨论】: