1

ボードゲームRISKのオンラインバージョンをプログラムしようとしています。ボードにJButtonを配置したいと思います。したがって、基本的にいくつかの画像の上にJButtonが必要ですが、機能させることができません。これが私のコードです:

 public void main(String[] args){
    JFrame frame = new JFrame("RISK");
    frame.setSize(800, 600);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


    JPanel panel = new JPanel();
    panel.setLayout(null);
    frame.add(panel);
    JButton button = new JButton("test");
    button.setBounds(100, 100, 150, 150);
    panel.add(button);

    frame.setVisible(true);
    frame.add(new graphics());
 }

 public void paintComponent(Graphics g) {
    super.paintComponent(g);
    try{
      BufferedImage board = ImageIO.read(new File("board.jpg"));
    }catch(IOException e){}
    g.drawImage(board, 0, 0, null);
 }

事前にどうもありがとうございました。-あなたの答えはこの特定のコードを参照する必要はありません。グラフィックとJButtonを使った一般的な例だけが素晴らしいでしょう!

4

2 に答える 2

3

必要に応じて、ボタンに画像を追加できます。これがサンプルコードです。


BufferedImage myPictur =ImageIO.read(getClass().getResourceAsStream("/resources/shoppingicon.png"));
JButton shoppingButton = new JButton("Shopping",new ImageIcon(myPicture));

于 2012-04-05T18:44:31.327 に答える
3

まず、オンライン アプリケーション、特に Web では、Swing はデスクトップ アプリケーション用に設計されているため、動作しません。Swing のような Web アプリケーションが必要な場合は、

  • Java ウェブスタート

  • Jアプレット

  • GWT

ボタンに背景画像を含めるには、次のようにします。

BufferedImage buferedImage;
JButton buttonImage;

buferedImage = ImageIO.read(getClass().getResourceAsStream("button-image-1.jpg")); 
buttonImage = new JButton("Start", new ImageIcon(buferedImage)); 
于 2012-04-05T18:57:43.990 に答える