꼬마 도깨비JButton을 사용하여 다른 클래스에서 JFrame을 열 수 있습니까? 순간 나는
ort java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.sound.sampled.*;
import java.util.Scanner;
import java.io.*;
import java.net.*;
public class Menu extends JFrame implements ActionListener
{
private JButton btn = new JButton("start now");
public Menu()throws Exception
{
JFrame os = new JFrame();
os.add(btn);
btn.setPreferredSize(new Dimension(5, 10));
btn.addActionListener(this);
os.setSize(822,547);
os.setBounds(550,300, 700,459);
os.setVisible(true);
os.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container cp = os.getContentPane();
JPanel endmessage = new JPanel();
JLabel mes = new JLabel();
mes.setIcon (new ImageIcon("backgroundMenu.png"));
cp.add(endmessage);
endmessage.add(mes);
os.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == btn)
{
SpaceShipsGamePartThree myFrame = new SpaceShipsGamePartThree();
myFrame.setVisible(true);
}
}
public static void main(String args[])throws Exception
{
Menu myFrame = new Menu();
}
}
// enter image description here 내가 메시지 오류 얻을 액션 청취자에 연결된 버튼을 사용보고되지 않은 예외; 붙잡혀 야하거나 던지라고 선언해야합니다. 이 클래스는 원래 메뉴를위한 클래스이므로 게임의 주요 부분에 연결할 수 있습니다.
누군가가 던져 버리고 예외가 있다고 선언 했으므로,'catch '해야합니다. 왜냐하면,'actionPerformed' 메소드에서 이것을 얻고 있다고 가정하기 때문에, 메소드 서명을 변경할 수 없습니다. 'ActionListener' 인터페이스 – MadProgrammer