0

これはおそらくばかげた質問ですが、私は GUI と Java 全般に不慣れです。私のGUIでは、JFrameがどこにも表示されないため、フレームと呼ばれるものを作成しました。それとも、JFrame を作成して、その上にすべてを配置する必要がありますか。画面の最小化、アイコンの変更などを行うにはJFrameが必要です。助けてくれてありがとう!

private ImageIcon bgi;
private JLabel bgl;


private JButton startButton;
private JButton helpButton;
private JButton backButton;
private final Action action = new SwingAction();


public static void main(String[] args) throws MalformedURLException, IOException {
    TwitterUnfollower gui = new TwitterUnfollower ();
    gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // when click x close program
    gui.setSize(902, 305);

    gui.setVisible(true);
    gui.setTitle("Solid Cloud Inc - Twitter Unfolower");
}

public TwitterUnfollower() throws MalformedURLException, IOException{

    bgi = new ImageIcon(getClass().getResource("tu.png"));
    getContentPane().setLayout(null);
    BufferedImage img = ImageIO.read(new URL("http://i1344.photobucket.com/albums/p656/SolidCloudInc/start_zpsf3781681.png"));
    //ImageIcon start = new ImageIcon(getClass().getResource("start.png"));
    startButton = new JButton("");
    startButton.setIcon(new ImageIcon(img));
    startButton.setBounds(22, 186, 114, 50);


    getContentPane().add(startButton);

    BufferedImage img2 = ImageIO.read(new URL("http://i1344.photobucket.com/albums/p656/SolidCloudInc/help_zpsc4fad867.png"));
    helpButton = new JButton("");
    helpButton.setIcon(new ImageIcon(img2));
    helpButton.setBounds(192, 186, 114, 50);

    getContentPane().add(helpButton);

    BufferedImage img3 = ImageIO.read(new URL("http://i1344.photobucket.com/albums/p656/SolidCloudInc/back_zps9d62b65b.png"));
    backButton = new JButton("");
    backButton.setIcon(new ImageIcon(img3));
    backButton.setBounds(105, 205, 82, 44);
    backButton.setBorder(BorderFactory.createEmptyBorder());
    backButton.setContentAreaFilled(false);
    backButton.setVisible(false);

    getContentPane().add(backButton);

    bgl = new JLabel (bgi);
    bgl.setBounds(0, 0, 886, 272);
    getContentPane().add(bgl);

    Events e = new Events();
    startButton.addActionListener(e);
    helpButton.addActionListener(e);
    backButton.addActionListener(e);
}

}

短くするためにコードから削除したアクションリスナーがあります。また、null レイアウトを避ける必要があることはわかっていますが、WindowBuilder を使用しているため、おそらく変更されるでしょう。再度、感謝します!

4

1 に答える 1