以水平和反向顺序打印数字并显示在 JavaFX 中的标签上
print number in horizontally and reverse order and show on label in JavaFX
我正在尝试横向打印数字然后倒序显示,现在,在下面的代码中,逻辑正确并在控制台上显示数字,imrpimi okay,如第二个所示link 并在 JavaFX 的标签中显示这些相同的值,显示与所需解决方案相反的结果
public class GridPane extends Application {
@Override
public void start(Stage primaryStage) {
GridPane root = new GridPane();
root.setPadding(new Insets(5));
root.setAlignment(Pos.CENTER);
for (int number = 8; number > 0; number--) {
StringBuilder str = new StringBuilder();
str.append(number);
Label label = new Label(str.toString());
System.out.println(str.toString());
label.setFont(Font.font("Arial", FontWeight.BOLD, 13));
label.setPrefSize(20, 20);
root.add(label,0, number + 3);
}
Scene scene = new Scene(root, 900, 900);
primaryStage.setTitle("Grid Pane Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
为了测试程序,我得到的是输出http://i.imgur.com/Jeh0zWp.jpg
目标是遵循控制台正确显示结果的逻辑,如下所示http://i.imgur.com/jH9jAs1.jpg
任何建议,我很感激和感谢。
root.add(...)
的参数是您要添加的节点、列索引和行索引。因此,您总是在行 number + 3
中添加显示 number
的标签:即 8
进入第 11 行,7
进入第 10 行,等等
迭代顺序没有区别。
如果你想要 1
在第 11 行,2
在第 10 行,3
在第 9 行,等等,那么你必须注意到 rowIndex = 12 - number
和打电话
root.add(label, 0, 12 - number);
我正在尝试横向打印数字然后倒序显示,现在,在下面的代码中,逻辑正确并在控制台上显示数字,imrpimi okay,如第二个所示link 并在 JavaFX 的标签中显示这些相同的值,显示与所需解决方案相反的结果
public class GridPane extends Application {
@Override
public void start(Stage primaryStage) {
GridPane root = new GridPane();
root.setPadding(new Insets(5));
root.setAlignment(Pos.CENTER);
for (int number = 8; number > 0; number--) {
StringBuilder str = new StringBuilder();
str.append(number);
Label label = new Label(str.toString());
System.out.println(str.toString());
label.setFont(Font.font("Arial", FontWeight.BOLD, 13));
label.setPrefSize(20, 20);
root.add(label,0, number + 3);
}
Scene scene = new Scene(root, 900, 900);
primaryStage.setTitle("Grid Pane Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
为了测试程序,我得到的是输出http://i.imgur.com/Jeh0zWp.jpg
目标是遵循控制台正确显示结果的逻辑,如下所示http://i.imgur.com/jH9jAs1.jpg
任何建议,我很感激和感谢。
root.add(...)
的参数是您要添加的节点、列索引和行索引。因此,您总是在行 number + 3
中添加显示 number
的标签:即 8
进入第 11 行,7
进入第 10 行,等等
迭代顺序没有区别。
如果你想要 1
在第 11 行,2
在第 10 行,3
在第 9 行,等等,那么你必须注意到 rowIndex = 12 - number
和打电话
root.add(label, 0, 12 - number);