I can't tab through controls, if they are in a layout container such as a VBox (I also tested with StackPane) and one container is invisible.
There was a very similar issue here:
RT-18447
Test case:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class TestApp extends Application {
public static void main(String[] args) throws Exception {
launch();
}
public void start(final Stage stage) throws Exception {
VBox root = new VBox();
VBox vBox = new VBox();
TextField textField1 = new TextField();
vBox.getChildren().add(textField1);
VBox vBox2 = new VBox();
TextField textField2 = new TextField();
vBox2.getChildren().add(textField2);
vBox2.setVisible(false);
TextField textField3 = new TextField();
root.getChildren().addAll(vBox, vBox2, textField3);
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
}
There was a very similar issue here:
Test case:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class TestApp extends Application {
public static void main(String[] args) throws Exception {
launch();
}
public void start(final Stage stage) throws Exception {
VBox root = new VBox();
VBox vBox = new VBox();
TextField textField1 = new TextField();
vBox.getChildren().add(textField1);
VBox vBox2 = new VBox();
TextField textField2 = new TextField();
vBox2.getChildren().add(textField2);
vBox2.setVisible(false);
TextField textField3 = new TextField();
root.getChildren().addAll(vBox, vBox2, textField3);
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
}