2
public String[] imagesArray = {Images.firstImage, Images.secondImage};

String imagesPath = "/testproject/images/";
 for(int i = 0; i<imagesArray.length; i++) {
    URL imageURL = this.getClass().getResource(imagesPath+imagesArray[i]);
    ImageIcon orignalImageIcon = new ImageIcon(imageURL);
    Image newImage = orignalImageIcon.getImage().getScaledInstance(100, 90, java.awt.Image.SCALE_SMOOTH);
    ImageIcon newImageIcon = new ImageIcon(newImage);

    JButton receiptButton = new JButton(newImageIcon);
    receiptButton.setBorder((new EmptyBorder(0,0,0,0)));
    toolBar.add(receiptButton);
    add(toolBar);
    }

デザイン レイアウトに画像が表示されませんか?

4

1 に答える 1

4

ImageIcon問題は、 を使用して元の画像をロードする際の非同期ロードの性質にある可能性が最も高いです。

それが問題の場合:

  1. 簡単にテストする方法があります。ボタンに を追加しorignalImageIconて、それらがすべて表示されるかどうかを確認します。
  2. それを修正する簡単な方法があります。次を使用して画像をロードしますImageIO.read(URL)- 画像が完全にロードされるまでブロックするメソッド。
于 2012-09-04T19:15:31.250 に答える