質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

3088閲覧

Javaで指定のキーを押すと、効果音が鳴るjavaプログラム

mememe0331

総合スコア55

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2021/08/02 06:21

編集2021/08/02 07:36

前提・実現したいこと

ボタンを押すと、音楽ファイルがなるようにしたいです

発生している問題・エラーメッセージ

メソッド getDocumentBase()が推奨されていないということで、エラーが表示されてしまいます。
どのようにすれば、エラーを解消できるのでしょうか?

他の音を鳴らす方法をご存知の方がいらっしゃったら教えて頂きたいです。

Bustra2.java:75: エラー: シンボルを見つけられません sound= getAudioClip(getDocumentBase(), "C:/Users/19t339/Desktop/Bustra/music2.wav"); ^ シンボル: メソッド getDocumentBase() 場所: クラス Bustra2 ノート:Bustra2.javaは推奨されないAPIを使用またはオーバーライドしています。 ノート:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください。 エラー1個

該当のソースコード

Java

1import java.awt.Color; 2import java.awt.Dimension; 3import java.awt.Graphics; 4import java.awt.event.KeyEvent; 5import java.awt.event.KeyListener; 6 7import javax.swing.JFrame; 8import javax.swing.JPanel; 9import javax.swing.SwingUtilities; 10 11import static java.awt.Color.*; 12import static java.awt.event.KeyEvent.*; 13 14/*効果音のimport*/ 15import java.applet.*; 16import java.awt.event.*; 17 18public class Bustra2 extends JPanel implements KeyListener { 19 /*効果音に必要な変数*/ 20 private AudioClip sound; 21 22 private static final long serialVersionUID = 1L; 23 private final static int R = 40, E = 2; 24 private final static int COLS = 6, ROWS = 5; 25 private Color[][] state; 26 private final static Color VIOLET = new Color(0x8a, 0x2b, 0xe2); 27 private Color[] colors = {RED, BLUE, GREEN, YELLOW, VIOLET, MAGENTA}; 28 private boolean toggle = false; 29 30 private int x = 0, y = 0; 31 32 public Bustra2() { 33 int i, j; 34 35 setPreferredSize(new Dimension(240, 320)); 36 state = new Color[COLS][ROWS]; 37 for (i = 0; i < COLS; i++) { 38 Color[] row = state[i]; 39 for (j = 0; j < ROWS; j++) { 40 row[j] = colors[(int)(Math.random() * 6)]; 41 } 42 } 43 setFocusable(true); 44 addKeyListener(this); 45 } 46 47 @Override 48 public void paint(Graphics g) { 49 int i, j; 50 for (i = 0; i < COLS; i++) { 51 Color[] row = state[i]; 52 for (j = 0; j < ROWS; j++) { 53 if (x == i && y == j) { 54 if (toggle) { 55 g.setColor(BLACK); 56 } else { 57 g.setColor(LIGHT_GRAY); 58 } 59 } else { 60 g.setColor(WHITE); 61 } 62 g.fillOval(i * R, j * R, R, R); 63 Color c = row[j]; 64 g.setColor(c); 65 g.fillOval(i * R + E, j * R + E, R - 2 * E, R - 2 * E); 66 } 67 } 68 g.setColor(BLACK); 69 g.drawString("←, ↑, ↓, →: move position", 20, ROWS * R + 25); 70 g.drawString("<SPACE>: toggle exchange", 20, ROWS * R + 40); 71 } 72 73 /*効果音の読み込み*/ 74 public void init(){ 75 sound= getAudioClip(getDocumentBase(), "C:/Users/19t339/Desktop/Bustra/music2.wav"); 76 addKeyListener(this); 77 } 78}

試したこと

エラーを調べること

補足情報(FW/ツールのバージョンなど)

コマンドプロンプト、VScode

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K_3578

2021/08/02 06:43 編集

そもそもJavaアプレット自体が、Java11以降廃止になった技術なので 使わないことを推奨します。 知った上で利用しているという事なら質問文にその旨を書いておいてください。
mememe0331

2021/08/02 06:56

分かりました! ありがとうございます。
guest

回答1

0

自己解決

https://nompor.com/2017/12/14/post-128/
このサイトの方法で解決できました。

投稿2021/08/02 06:56

mememe0331

総合スコア55

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問