如何使用提升的小部件设置Tab键顺序?

时间:2016-10-10 19:44:43

标签: qt qwidget qt-designer tab-ordering

我有以下设计

QWidget
  QFrame promoted to FooComponent 
    QLineEdit a (internal tab order 1)
    QLineEdit b (tab order 2)
  QLineEdit c (tab order 1)

在Qt Creator(设计师)中,我无法为FooComponent设置标签顺序。因此,当我激活QWidget时,我会在c中看到光标,但我希望它位于a

如何使用级联组件处理Tab键顺序?

1 个答案:

答案 0 :(得分:2)

您可以使用setFocuProxy执行此操作。在FooComponent中,将焦点代理设置为其内部选项卡顺序中的第一个子窗口小部件。

然后在Qt Designer中,将提升的focusPolicy的{​​{1}}更改为QFrame,然后重置标签顺序,使其位于序列中的正确位置。