gpt4 book ai didi

java - 如何制作可点击的图片?

转载 作者:行者123 更新时间:2023-12-02 03:40:25 25 4
gpt4 key购买 nike

我完全无能为力,迷失了方向。我最近开始使用 Java 进行编程。我想制作一个程序,显示用户可以单击的图像(带有图像的按钮)并播放声音。我看过很多教程,但当我按照它们操作时,它们不起作用。另外,我不知道是否应该使用 swing、javaFX 或 awt,或者是否需要仅为图像和按钮创建一个新文件。请帮忙。

最佳答案

这是一个使用 JavaFX 的示例。您的问题被标记为 Swing,但问题文本提到您正在考虑 JavaFX,因此我想我应该提供此解决方案,以便您可以看到 JavaFX 样式实现的样子。

love potion

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.image.*;
import javafx.scene.layout.StackPane;
import javafx.scene.media.AudioClip;
import javafx.stage.Stage;

public class ImageAudioPlayer extends Application {
private static final String BUTTON_ICON_LOC =
"http://icons.iconarchive.com/icons/mirella-gabriele/fantasy-mediaeval/128/Poison-red-icon.png";
private static final String AUDIO_FILE_LOC =
"http://soundbible.com/mp3/Power_Up_Ray-Mike_Koenig-800933783.mp3";

@Override
public void start(Stage stage) throws Exception {
final AudioClip audioClip = new AudioClip(AUDIO_FILE_LOC);
final ImageView graphic = new ImageView(new Image(BUTTON_ICON_LOC));

Button button = new Button(null, graphic);
button.setStyle("-fx-base: mistyrose;");
button.setOnAction(event -> audioClip.play());

StackPane layout = new StackPane(button);
layout.setPadding(new Insets(10));
stage.setScene(new Scene(layout));
stage.show();
}

public static void main(String[] args) {
launch(args);
}
}

我不太了解 Swing,所以我不会提供解决方案。 Library recommendations are off-topic for StackOverflow ,因此我不会在这里提供库推荐,并鼓励您自己研究潜在的技术,并决定适合您的应用程序要求和技能集的最佳匹配。

关于java - 如何制作可点击的图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36899365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com