问题描述
我正在运行一个简单的测试程序,它使用 Qt 的 QDialogButtonBox 创建四个按钮。在 Linux 上按预期从一个按钮切换到另一个按钮:所有四个按钮依次获得焦点。
但在使用 Qt 5.15.2 的 macOS 10.13.6 上,Tab 仅在前三个按钮之间移动。但是,Shift-tab 在所有四个按钮之间以相反的方向移动。
我已经尝试给按钮赋予不同的角色值(例如,否、是、接受、拒绝),并且根本没有设置焦点策略,但 Tab 仍然没有访问所有按钮。
这是一个错误,还是一些故意的 macOS 界面奇怪?如果是后者,确保 Tab 访问所有平台上的所有按钮的最佳方法是什么?
#include <QtWidgets>
int main(int argc,char ** argv) {
QApplication app{argc,argv};
QWidget w;
QVBoxLayout layout{&w};
QDialogButtonBox Box;
for (auto text : {"button1","button2","button3","button4"})
Box.addButton(text,QDialogButtonBox::norole)->setFocusPolicy(Qt::StrongFocus);
layout.addWidget(&Box);
w.show();
return app.exec();
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)