これはおそらくばかげた質問ですが、私は 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 を使用しているため、おそらく変更されるでしょう。再度、感謝します!