|
分類:[Java]
開発環境:メモ帳にて作成(eclipseは使用しておりません)
使用言語:java
version :1.7.0_67
昨日も質問しました。java初心者です。
しま様には的確なご指摘有難うございました。
又、閲覧されている皆様、宜しくお願い致します。
質問内容:
一つの画像を読み込み、任意の部分だけを表示するようにしていたのですが、表示する部分が多く、
毎回そのプログラムを、コピー → 貼り付け → 表示部分の選択箇所を修正。
としていたのですが、今後も増え続ける予定でおり、この表示プログラムをメソッド化したいと考えております。
今まで、自分なりにメソッド化の文章を考えて作成していたのですが、どうしても自分だけでは作成できず・・・。
この様な質問は大変失礼かとは思いますが、皆様のご助力を頂けたらと思っております。
どなたか、以下のソースを見て、メソッド化をして下さる方がおりましたら、宜しくお願いします。
/*----------画像の部分選択の表示---------*/
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.awt.Font;
import java.awt.Color;
import java.io.File;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
public class gazousyori{
public static void main(String[] args) throws java.io.IOException{
//ウィンドウフレームを作成、表示
JFrame jf = new JFrame(); //インスタンス化とjfのオブジェクト化
jf.setBounds( 50, 100, 1200, 550 ); //windowのサイズの設定
jf.setVisible( true ); //windowの表示
jf.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); //windowのxボタン有効化
//【親】パネルを作成し、フレームに貼り付け
JPanel jp = new JPanel(); //パネルを新しく作成
jp.setBackground( Color.BLACK ); //パネルの色を黒に設定
jf.add( jp ); //windowに黒色のパネルを貼り付け
//【子】パネルを作成し、【親】パネルに貼り付け
JPanel jpChild = new JPanel(); //パネルを新しく作成
File file = new File("vx_chara_all.png" ); //File形式をfileにインスタンス化
BufferedImage ball = ImageIO.read( file ); //fileをBufferedImage ballに画像全体を読込
int mapchip_width = 32;
int mapchip_height = 32;
{
//Subimage mapchip_width,mapchip_height,〜mapchip_width32,mapchip_height32までの画像をbshortに読み込む
BufferedImage bshort = ball.getSubimage( mapchip_width * 0, mapchip_height * 0, mapchip_width, mapchip_height );
ImageIcon ii = new ImageIcon( bshort ); //JLabel用に型変換
JLabel jlImage = new JLabel( ii ); //jlImageにオブジェクトiiの画像を代入
jlImage.setSize( mapchip_width, mapchip_height ); //画像のサイズを設定
jp.add( jlImage ); //【親】パネルにjlImageを貼り付け
}
{
//Subimage mapchip_width,mapchip_height,〜mapchip_width32,mapchip_height32までの画像をbshortに読み込む
BufferedImage bshort = ball.getSubimage( mapchip_width * 0, mapchip_height * 0, mapchip_width, mapchip_height );
ImageIcon ii = new ImageIcon( bshort ); //JLabel用に型変換
JLabel jlImage = new JLabel( ii ); //jlImageにオブジェクトiiの画像を代入
jlImage.setSize( mapchip_width, mapchip_height ); //画像のサイズを設定
jp.add( jlImage ); //【親】パネルにjlImageを貼り付け
}
{
//Subimage mapchip_width,mapchip_height,〜mapchip_width32,mapchip_height32までの画像をbshortに読み込む
BufferedImage bshort = ball.getSubimage( mapchip_width * 0, mapchip_height * 0, mapchip_width, mapchip_height );
ImageIcon ii = new ImageIcon( bshort ); //JLabel用に型変換
JLabel jlImage = new JLabel( ii ); //jlImageにオブジェクトiiの画像を代入
jlImage.setSize( mapchip_width, mapchip_height ); //画像のサイズを設定
jp.add( jlImage ); //【親】パネルにjlImageを貼り付け
}
}
}
|