JFrameWithPanel 추상적하지 구현되지 않고 공용 클래스 JFrameWithPanel이 JFrame의이 된 ActionListener의 ActionListener는
I 돈 구현 확장 java.awt.event.ActionListener에서 추상 메소드의 actionPerformed (java.awt.event.ActionEvent의)를 대체하지 않습니다 이 코드를 얻지 못한다. Book과 Java 사이트는 이것이 메소드의 문법임을 알려주지 만이 오류는 계속해서 나타납니다.
import javax.swing.*;
import javax.swing.JOptionPane;
import java.awt.*;
import java.awt.event.*;
import java.lang.Math.*;
import java.lang.Integer.*;
import java.util.*;
import java.util.Random;
import java.io.*;
import java.text.*;
import java.text.DecimalFormat.*;
public class JFrameWithPanel extends JFrame implements ActionListener
{
JButton button = new JButton("Exit");
public JFrameWithPanel()
{
super("JFrame with Panel");
JComboBox packageChoice = new JComboBox();
packageChoice.addItem("A+ Certification");
packageChoice.addItem("Network+ Certification ");
packageChoice.addItem("Security+ Certifictation");
packageChoice.addItem("CIT Full Test Package");
packageChoice.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pane = new JPanel();
pane.add(button);
pane.add(packageChoice);
setContentPane(pane);
setSize(200,100);
setVisible(true);
}
}
는 나중에
public class CreateJFrameWithPanel
{
public static void main(String[] args)
{
JFrameWithPanel panel = new JFrameWithPanel();
}
}
'JFrame '과 같은 클래스를 불필요하게 확장하는 것은 나쁜 생각입니다. 무작위 인터페이스 (익명 내부 클래스 사용)를 구현합니다. Swing (및 AWT)은 AWT "EDT"스레드에서 사용해야하므로 main에 상용구가 필요합니다. 다른 책을 원할 수도 있습니다. –