通过按 Tab 键将焦点移动到下一个单元格。我想更改此行为,以便从选项卡键导航中排除某些列。假设一个表由 5 列组成,那么只有第 1 列和第 3 列应该被考虑用于导航。从我读到FocusTraversalPolicy
的内容用于此目的。然而,实现这种行为似乎相当复杂,因为没有提供列和行索引。那么如何返回正确的组件呢?
public class Table extends JTable{
int columnCount = 5;
int[] tab = { 1, 3 };
public Table(){
...
this.setFocusTraversalPolicy(new FocusTraversalPolicy() {
@Override
public Component getLastComponent(Container arg0) {
return null;
}
@Override
public Component getFirstComponent(Container arg0) {
return null;
}
@Override
public Component getDefaultComponent(Container arg0) {
return null;
}
@Override
public Component getComponentBefore(Container arg0, Component arg1) {
return null;
}
@Override
public Component getComponentAfter(Container arg0, Component arg1) {
return null;
}
});
}
}