无论我编写什么代码,GUI中的java按钮始终位于左上角
我的另一个GUI有这个问题,无论我做什么,我都无法修复它。我在书中举了一个例子,但最终还是忽略了对齐
无论我为Pos做什么,我的按钮总是位于GUI的左上角
尝试重新组织代码,并为setAlignment
设置不同的位置
package application;
import javafx.scene.image.*;
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.Group;
import javafx.scene.paint.Color;
import javafx.scene.shape.*;
import javafx.event.ActionEvent;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.layout.FlowPane;
public class Game extends Application {
Rectangle rect = new Rectangle(0, 800, 800, 100);
public void start(Stage primaryStage) {
rect.setFill(Color.BLACK);
Button pushA = new Button("Fight");
pushA.setOnAction(this::processButtonPressFight);
Button pushB = new Button("Block");
pushB.setOnAction(this::processButtonPressFight);
Button pushC = new Button("Bag");
pushC.setOnAction(this::processButtonPressFight);
FlowPane pane = new FlowPane(pushA, pushB, pushC);
pane.setAlignment(Pos.BASELINE_LEFT);
pane.setHgap(100);
Group root = new Group(rect, pane);
Scene scene = new Scene(root, 800, 900);
primaryStage.setTitle("Dungeon Crawler Battle!");
primaryStage.setScene(scene);
primaryStage.show();
}
public void processButtonPressFight(ActionEvent event) {
}
public static void main(String[] args) {
launch(args);
}
}
我希望我的按钮在左上角,但把它们放在左上角
# 1 楼答案
啊,问题是你设置的是场景的大小,而不是窗格的大小,因为窗格的大小不同,所以它没有填充整个场景,这就是为什么如果你像这样在窗格中添加边框,你的位置不会改变
更改窗格大小后,您将看到窗格有多小以及位于何处这应该不再是一个问题
总而言之,对齐没有被忽略,您只是看不到更改,因为窗格很小