JavaFX TabPane:如何设置选定的选项卡

Dor*_*thy 44 java tabs selecteditem javafx-2

我有一个带有JavaFX 2的Java桌面应用程序,在我的FX中我有一个TabPane.我想设置默认选项卡.换句话说,我想将选项卡设置为选中.我发现有多种方法可以找出哪个选项卡被选中,setSelectionModel()但我找不到如何使用它.

TabPane tabPane = new TabPane();

Tab tab0 = new Tab("blue");
tab.setContent(new Rectangle(200,200, Color.BLUE));

Tab tab1 = new Tab("green");
tab.setContent(new Rectangle(200,200, Color.GREEN));

tabPane.getTabs().addAll(tab0, tab1);
Run Code Online (Sandbox Code Playgroud)

pmo*_*ule 91

SelectionModel是正确的方法.您可以TabPane通过使用获取默认值或分配自己的实现setSelectionModel(...).默认模型应该足够开头.

SingleSelectionModel<Tab> selectionModel = tabPane.getSelectionModel();
Run Code Online (Sandbox Code Playgroud)

将其存储在某个局部变量中后,您可以使用不同的选项来选择选项卡.

selectionModel.select(tab); //select by object
selectionModel.select(1); //select by index starting with 0
selectionModel.clearSelection(); //clear your selection
Run Code Online (Sandbox Code Playgroud)

如果您尝试选择不存在的选项卡,则不会发生任何事情.


Zon*_*Zon 23

为简化上述方法:

myTabPane.getSelectionModel().select(myTab);
Run Code Online (Sandbox Code Playgroud)