【发布时间】:2013-05-16 15:21:29
【问题描述】:
我正在创建一个 JavaFX 2.2 程序,并且需要创建自定义 UI 控件(只是顶部始终存在的最小化-最大化/恢复-关闭按钮)。我需要为此创建自定义按钮,简单到只是创建。
我只需要最小化和最大化/恢复按钮的真实代码(关闭按钮简直是小菜一碟)。最小化按钮将应用程序恢复到任务栏。最大化按钮,好吧,最大化它以适应用户的屏幕,并在最大化时切换到恢复按钮。单击还原按钮后,窗口将还原为其初始大小 (1200x600)。
我尝试在我的 fxml 文件中使用stage.setSize(width, height); 进行还原,但它不起作用(stage 被突出显示为错误,而舞台名称为 stage。)
我用过
scene.setFill(Color.TRANSPARENT);
stage.initStyle(StageStyle.TRANSPARENT);
将默认窗口设置为透明。
程序(主文件,不是控制器)是:
Parent root = FXMLLoader.load(getClass().getResource("fxmlfile.fxml"));
Scene scene = new Scene(root);
scene.setFill(Color.TRANSPARENT);
stage.initStyle(StageStyle.TRANSPARENT);
stage.setTitle("Nothing here");
stage.setScene(scene);
stage.show();
关闭动作的控制器文件是:
@FXML
private void exitProgramAction(ActionEvent exitProgramEvent) {
System.out.println("Killing program...");
System.exit(0);
}
【问题讨论】:
-
如需尽快获得更好的帮助,请发帖SSCCE。
-
@AndrewThompson 我的代码几乎没有问题。我是 java 初学者,不知道用于此目的的代码。
-
“这在我的代码中几乎没有问题。” 在这种情况下,SSCCE 的重点是让其他人可以快速测试想法。不过这取决于你..
-
@PratikAnand 请查看文档。 docs.oracle.com/javafx/2/api/javafx/stage/Stage.html
-
@PratikAnand 创建一个 JavaFX 应用程序。 (最简单的),它可以做所有但你不能做的事情。
标签: java custom-controls customization javafx