Javafx按钮文本未显示

Javafx按钮文本未显示,java,button,javafx,Java,Button,Javafx,我目前正在用JavaFX创建一个布局。但是,我的按钮的文本在某些地方显示,而对于某些按钮,文本仅显示为“…” 我想在按钮中显示整个文本,同时保持窗口大小为500x500 这是我的代码,我创建了10个按钮,其中只有一些按钮显示文本。是否有任何方法可以在显示文本的同时,在整个布局中将按钮大小设置为常量 import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Scene; imp

我目前正在用JavaFX创建一个布局。但是,我的按钮的文本在某些地方显示,而对于某些按钮,文本仅显示为“…”
我想在按钮中显示整个文本,同时保持窗口大小为500x500
这是我的代码,我创建了10个按钮,其中只有一些按钮显示文本。是否有任何方法可以在显示文本的同时,在整个布局中将按钮大小设置为常量

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;

public class MainGUI extends Application {
    private Button[] buttons=new Button[10];
    private Stage window;
    private GridPane layout;
    public int count=3;
    @Override
    public void start (Stage primaryStage)
    {
        window=primaryStage;
        layout=new GridPane();
        layout.setPadding(new Insets(100));
        layout.setVgap(10);
        layout.setHgap(10);

        for(int i=0;i<10;i++)
        {
            buttons[i]=new Button();
        }
        buttons[0].setText("y=0.5x");
        buttons[1].setText("y=x");
        buttons[2].setText("y=2x");
        buttons[3].setText("y=0.1x^2");
        buttons[4].setText("y=x^2");
        buttons[5].setText("y=10x^2");
        buttons[6].setText("y=3 sin(x pi/10)");
        buttons[7].setText("y=6 sin(x pi/10)");
        buttons[8].setText("y=6 sin(x pi/5)");
        buttons[9].setText("y= 5 sin(x pi/10) + (5/3)sin(3x pi/10) + sin(x pi/2) + (5/7)sin(7x pi/10)");

        for(int j=0;j<10;j++)
        {
            if (count==3)
            {
                count=0;
            }
            if(j<=2)
            {
                GridPane.setConstraints(buttons[j],count,0);
            }
            else if ((j>2) && (j<=5))
            {
                GridPane.setConstraints(buttons[j],count,1);
            }
            else if((j>5) && (j<=8))
            {
                GridPane.setConstraints(buttons[j],count,2);
            }
            else if((j>8) && (j<=9))
            {
                GridPane.setConstraints(buttons[j],1,3);
            }
            count++;
        }
        layout.getChildren().addAll(buttons);
        Scene scene=new Scene(layout,600,600);
        window.setScene(scene);
        window.show();
    }
    public static void main(String[] args)
    {
        launch(args);
    }
}
导入javafx.application.application;
导入javafx.geometry.Insets;
导入javafx.scene.scene;
导入javafx.scene.control.Button;
导入javafx.scene.layout.GridPane;
导入javafx.stage.stage;
公共类MainGUI扩展应用程序{
私有按钮[]按钮=新按钮[10];
私人舞台窗口;
专用网格窗格布局;
公共整数计数=3;
@凌驾
公共无效开始(阶段primaryStage)
{
窗口=初级阶段;
布局=新建网格窗格();
布局。设置填充(新插图(100));
布局。设置间隙(10);
布局。setHgap(10);

对于(int i=0;i这是0个插图的外观:

正如你所看到的,它是安静紧密的。 一个简单的替代方法是将最后一个长按钮跨过两列:

GridPane.setConstraints(buttons[j],1,3,2,1);
导致

<> >对于布局的更多控制考虑使用一些子窗格。例如:


您可以设置按钮的minWidth()。我一直在使用minSize。感谢您的帮助!如果您将页面宽度设置为600或700,它就可以工作了?我在您发布的代码中没有看到
minSize
minWidth