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

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

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

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

Q&A

2回答

3694閲覧

javaで画像が表示されない

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

0グッド

0クリップ

投稿2016/02/04 13:32

編集2016/02/06 08:03

イメージ説明
45行目のnew java.swing.ImageIcon(s4)を46行目のs3が入っているところにそのまま
new java.swing.JLabel (new java.swing.ImageIcon(s4));と書くとエラーはなくなるんですが、
画像のようにするとエラーが出ます。
なぜでしょう?

エラーメッセージは以下です。
イメージ説明

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

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

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

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

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

guest

回答2

0

とてもいまさらなのですが。
s3の後ろの = が全角になっていたのではないでしょうか。
kozuchiさんの回答のコメントにある「発見しました」のコードからのコピペも全角のようです。

投稿2019/01/25 17:33

編集2019/01/25 17:36
jimbe

総合スコア12648

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

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

jimbe

2019/01/25 17:47

というか、いくら解決済みになっていないからとは言え、3年前の、質問者が退会している質問をアクティブのトップに出さないで欲しいのですが…><
guest

0

こちらの環境

Windows7 jdk1.8.0_71

で、ご質問のコードに多少補完してコンパイルしてみましたが、
当該箇所では特にエラーは出ませんでした。

エラーの内容などがわかると、他の事もお答えできるかもしれません。
しかしそのコードだけでは、残念ですがこれ以上のことは答えようがありません。

こちらの環境では、以下のようにコードを補うことで画像は表示できました。

Java

1import java.io.IOException; 2 3import javax.swing.JFrame; 4import javax.swing.JPanel; 5 6public class Sample { 7 8 public static void main(String[] args) throws IOException { 9 JFrame jf = new JFrame("test"); 10 jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 11 JPanel jp1 = new JPanel(); 12 jf.add(jp1); 13 java.io.File s1 = new java.io.File("image/1.png"); 14 java.awt.image.BufferedImage s2 = javax.imageio.ImageIO.read(s1); 15 javax.swing.ImageIcon s3 = new javax.swing.ImageIcon(s2); 16 17 javax.swing.JLabel image = new javax.swing.JLabel (s3); 18 image.setSize(180, 135); 19 jp1.add(image); 20 jf.pack(); 21 jf.setVisible(true); 22 } 23 24}

スナップショットで示していただいたコンパイルエラーに関してですが、
このコードを見る限りそういったエラーが出る原因が見当たりません。
質問に示されたコード以外の部分に問題があるのではないでしょうか。
(ちなみに、「Project」->「build automatically」はオンになってますよね?)

投稿2016/02/04 14:17

編集2016/02/05 15:03
kozuchi

総合スコア1193

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

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

kozuchi

2016/02/04 14:55

出ている場所はわかりましたが、エラーメッセージの文面はどうなっていますか? Eclipse をお使いなら、下の方に「Problems」というタイトルのビューがあるはずです、その内容はどうなっていますか? 今、この質問についてもっとも重要な情報が表示されているのはそこです。
退会済みユーザー

退会済みユーザー

2016/02/04 15:42

https://drive.google.com/file/d/0B8jdcQMQB0RVeUo2ZEM4dXhZQ0E/view?usp=sharing こんな感じですね。 それと発見したのですが、 javax.swing.ImageIcon s3 = new javax.swing.ImageIcon(s4); //JLabel用に変換 javax.swing.JLabel image = new javax.swing.JLabel (s3); s3をを入れるような感じにしていて出ていたエラーが javax.swing.JLabel image = new javax.swing.JLabel (new javax.swing.ImageIcon(s4)); 直接いれてあげるとエラーがなくなりました。
kozuchi

2016/02/05 14:55

コードを補完して画像が表示されるものを作ってみましたので、回答を書き換えました。 画面のスナップショット等はここに書くのではなく、回答を編集して追加したほうが、 他の人にも見やすくなるので、より多くの人から有効な回答を得られやすくなると思います。 (後でこのページの内容をあなたが読み返す場合もそのほうが分かり易いでしょう。)
退会済みユーザー

退会済みユーザー

2016/02/06 08:04

意見を参考にさせてもらい、書き直しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問