- Home ›
- Swing ›
- ImageIconクラス ›
- HERE
URLで画像ファイルを指定してImageIconオブジェクトを作成する
広告
インターネット上にある画像ファイルを指定してImageIconクラスのオブジェクトを作成する方法を見ていきます。インターネット上にある画像ファイルの指定にはURLで指定します。次のコンストラクタを使用します。
ImageIcon public ImageIcon(URL location)
指定された URL からイメージアイコンを生成します。イメージはロード状態を監視するメディアト ラッカーを使ってプリロードされます。アイコンの説明は初期化され、URL の文字列表現となります。 パラメータ: location - イメージの URL
引数には画像ファイルが設置しているインターネット上の場所をURLクラスのオブジェクトとして指定します。URLクラスについては『URLクラス』を参照して下さい。
実際には次のように使用します。
try{
URL url = new URL("http://www.xxxx.xxx/xxxx.png");
ImageIcon icon = new ImageIcon(url);
}catch(MalformedURLException e){
e.printStackTrace();
}
サンプルプログラム
では実際に試してみましょう。今回は「http://www.javadrive.jp/tutorial/imageicon/hasami.png」にある画像を読み込んでImageIconクラスのオブジェクトを作成し、そのオブジェクトを使ってラベルを作成してみます。
import javax.swing.*;
import java.awt.BorderLayout;
import java.net.URL;
import java.net.MalformedURLException;
public class JImageIconTest3 extends JFrame{
public static void main(String[] args){
JImageIconTest3 frame = new JImageIconTest3();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(10, 10, 150, 150);
frame.setTitle("タイトル");
frame.setVisible(true);
}
JImageIconTest3(){
URL url = null;
try{
url = new URL("http://www.javadrive.jp/tutorial/imageicon/hasami.png");
}catch(MalformedURLException e){
e.printStackTrace();
}
JLabel label = null;
if (url != null){
ImageIcon icon = new ImageIcon(url);
int iconHeight = icon.getIconHeight();
int iconWidth = icon.getIconWidth();
label = new JLabel(icon);
label.setText(iconWidth + "×" + iconHeight);
}else{
label = new JLabel("Not image");
}
JPanel p = new JPanel();
p.add(label);
getContentPane().add(p, BorderLayout.CENTER);
}
}
上記をコンパイルした後で実行すると次のように表示されます。
( Written by Tatsuo Ikura )
JavaDrive