• title: JPanelの背景に画像を並べる tags: [JPanel, Image] author: aterai pubdate: 2004-09-13T03:00:13+09:00 description: JPanelの背景に画像をタイル状に並べて表示します。

概要

JPanelの背景に画像をタイル状に並べて表示します。

サンプルコード

@Override public void paintComponent(Graphics g) {
  Dimension d = getSize();
  int w = bgimage.getIconWidth();
  int h = bgimage.getIconHeight();
  for(int i=0;i*w<d.width;i++) {
    for(int j=0;j*h<d.height;j++) {
      g.drawImage(bgimage.getImage(), i*w, j*h, w, h, this);
    }
  }
  super.paintComponent(g);
}
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、JPanel#setOpaque(false)と背景を描画しないように設定したパネルで、JPanel#paintComponent(Graphics)メソッドをオーバーライドし、ここでImageを順番に並べて描画しています。

参考リンク

コメント