JavaFx多行选项卡标题

JavaFx多行选项卡标题,javafx,Javafx,我对选项卡窗格选项卡有很长的标题。请帮助我使选项卡标题包含多行 public class Main extends Application { @Override public void start(Stage primaryStage) throws Exception{ Stage stage = new Stage(); Tab tab1 = new Tab("tab1 tab1 tab1 tab1 tab1 "); Ta

我对选项卡窗格选项卡有很长的标题。请帮助我使选项卡标题包含多行

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception{
        Stage stage = new Stage();

        Tab tab1 = new Tab("tab1 tab1 tab1 tab1 tab1 ");
        Tab tab2 = new Tab("tab2 tab2 tab2 tab2 tab2 ");
        Tab tab3 = new Tab("tab3 tab3 tab3 tab3 tab3 ");
        TabPane tabPane = new TabPane(tab1, tab2, tab3);

        tabPane.setMinHeight(80);
        tabPane.setMaxWidth(230);

        HBox hbox = new HBox(10);
        hbox.getChildren().addAll(new Label("Tabs ==> "), tabPane);

        Scene choosePlayer = new Scene(hbox, 300, 400);
        stage.setScene(choosePlayer);
        stage.show();
    }


    public static void main(String[] args) {
        launch(args);
    }
}
试试这个:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception{
        Stage stage = new Stage();

        Tab tab1 = new Tab("tab1 tab1 tab1\ntab1 tab1");
        Tab tab2 = new Tab("tab2 tab2 tab2\ntab2 tab2 ");
        Tab tab3 = new Tab("tab3 tab3 tab3\ntab3 tab3 ");
        TabPane tabPane = new TabPane(tab1, tab2, tab3);

        HBox hbox = new HBox(10);
        hbox.getStylesheets().add(getClass().getResource("Main.css").toExternalForm());
        hbox.getChildren().addAll(tabPane);

        Scene choosePlayer = new Scene(hbox);
        stage.setScene(choosePlayer);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
Main.css

.tab-pane {
    -fx-tab-min-height: 70;
    -fx-tab-max-height: 70;
}

试试这个:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception{
        Stage stage = new Stage();

        Tab tab1 = new Tab("tab1 tab1 tab1\ntab1 tab1");
        Tab tab2 = new Tab("tab2 tab2 tab2\ntab2 tab2 ");
        Tab tab3 = new Tab("tab3 tab3 tab3\ntab3 tab3 ");
        TabPane tabPane = new TabPane(tab1, tab2, tab3);

        HBox hbox = new HBox(10);
        hbox.getStylesheets().add(getClass().getResource("Main.css").toExternalForm());
        hbox.getChildren().addAll(tabPane);

        Scene choosePlayer = new Scene(hbox);
        stage.setScene(choosePlayer);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
Main.css

.tab-pane {
    -fx-tab-min-height: 70;
    -fx-tab-max-height: 70;
}


插入一个\n应该可以做到:新建选项卡(“tab1 tab1 tab1 \n tab1 tab1”)@DmitryKolesnikovich你是对的。我使用JFoenix。JFX选项卡窗格允许这样做。插入一个\n常规选项卡应该可以做到这一点:新建选项卡(“tab1 tab1 tab1 \n tab1 tab1”)@DmitryKolesnikovich你是对的。我使用JFoenix。JFX选项卡窗格允许这样做。你是怎么做到的?我创建了文件stylesheet.css并添加了line scene.getStylesheets().add(“stylesheet.css”);但是这没有效果。复制
Main.java
Main.css
,将它们放在同一个目录下运行。我这样做了,没有效果。你能把你的项目寄给我吗?可能是版本问题?可能这里有人会测试并发布他/她的结果。你是怎么做到的?我创建了文件stylesheet.css并添加了line scene.getStylesheets().add(“stylesheet.css”);但是这没有效果。复制
Main.java
Main.css
,将它们放在同一个目录下运行。我这样做了,没有效果。你能把你的项目寄给我吗?可能是版本问题?可能这里有人会测试它并发布他/她的结果