概要

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

サンプルコード

@Override protected 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 all

解説

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

参考リンク

コメント