原文来自:http://stackoverflow.com/questions/10275841/how-to-change-the-icon-on-the-title-bar-of-a-stage-in-java-fx-2-0-of-my-applicat/15206407#15206407
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.StackPane; import javafx.scene.image.Image; import javafx.stage.Stage; public class StackoverflowIcon extends Application { @Override public void start(Stage stage) { StackPane root = new StackPane(); Scene scene = new Scene(root, 300, 250); // set icon stage.getIcons().add(new Image("/path/to/stackoverflow.jpg")); // set title stage.setTitle("Wow!! Stackoverflow Icon"); stage.setScene(scene); stage.show(); } /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } }
运行截图:
JavaFX 8升级
上面代码仍然奏效,没必要修改。 Java 1.8(1.8.0_31) 环境中测试、检测。路径支持本地的也可以是远程的。
stage.getIcons().add(new Image("/path/to/javaicon.png"));
或者
stage.getIcons().add(new Image("https://example.com/javaicon.png"));
希望这对你有帮助
---------------------------------------------------------------------------------------------------------------------------------------------
你也可以从类路径里面像这样加载图片:
new Image(XYZ.class.getResourceAsStream("/xyz.png"))
XYZ是类名 (也可以是你正在加载图片的类的类名) xyz.png 是你的图片名。放到你classpath路径或者Jar包内部
如果你的图标和类放在同一个包里面,可以省略/
时间: 2024-10-04 15:49:18