小编Mar*_*utt的帖子

JavaFX - 调整屏幕大小时调整画布大小

我正在使用我在JavaFX中构建的关卡编辑器的GUI,我希望能够将画布对象的大小调整为新的拆分窗格尺寸.看来我试过的一切都失败了.这包括直接传递窗格对象并使用它的宽度,使用窗口大小侦听器并将width和height属性绑定到拆分窗格的属性.有任何想法吗.这是调整大小之前的松散之处:

在此输入图像描述

调整大小后:

在此输入图像描述

有没有人有任何想法.该类的代码非常广泛,但将包含调整大小的代码.

public Canvas canvas;
public String tabTitle;
public VBox layout;
public GraphicsContext g;
public Core core;

public CanvasTab(Core core, String tabTitle){
    this.core = core;
    this.canvas = new Canvas(core.scene.getWidth() - 70, core.scene.getHeight() - 70);
    layout = VBoxBuilder.create().spacing(0).padding(new Insets(10, 10, 10, 10)).children(canvas).build();

    this.g = canvas.getGraphicsContext2D();

    g.setFill(Color.BLACK);
    g.fillRect(0, 0, canvas.getWidth(), canvas.getHeight());

    HBox.setHgrow(layout, Priority.ALWAYS);

    this.setContent(layout);
    this.setText(tabTitle);

    canvas.widthProperty().bind(layout.widthProperty().subtract(20));
    canvas.heightProperty().bind(layout.heightProperty().subtract(20));
}

public CanvasTab(Canvas canvas){
    this.canvas = canvas;
}
Run Code Online (Sandbox Code Playgroud)

java resize javafx canvas

7
推荐指数
2
解决办法
2万
查看次数

将TextArea的内容写入文件

我目前正在将所有使用Java的旧应用程序转换为更新,更时尚的JavaFX平台.

以前在我的一个应用程序中,您可以将TextArea的内容写入文件,在文本区域中以图形方式显示,缩进时间间隔很小.您通过使用JTextArea类继承的write()方法完成此操作.

无论如何使用JavaFX文本区域执行此操作,或者我甚至可以解析文件并以此方式执行此操作?

非常感谢帮助!

JTextArea中用于写入文件的代码:

public static void writeFile(File fileName) throws IOException{
    BufferedWriter fileOut = new BufferedWriter(new FileWriter(fileName));
    Gui.getTextArea().write(fileOut);
}
Run Code Online (Sandbox Code Playgroud)

java text javafx area

2
推荐指数
1
解决办法
5966
查看次数

标签 统计

java ×2

javafx ×2

area ×1

canvas ×1

resize ×1

text ×1