두 가지 클래스에서 어려움이 있습니다 : 프로그램 클래스와 EventHandler 클래스.java. 이벤트 핸들러 인터페이스
프로그램 클래스는 "Ground"(배경 jpg가있는 창)와 "추가"버튼이있는 두 개의 별도 창을 만들어 꽃을 "Ground"에 추가합니다.
public class Program implements Runnable {
@Override
//implements interface
public void run() {
example1.Ground g;
g = new example1.Ground();
// ground object
javax.swing.JFrame window = new javax.swing.JFrame("windowwithbutton");
//window (JFRAME)
javax.swing.JPanel panel = new javax.swing.JPanel();
//content (JPANEL)
javax.swing.JButton ab = new javax.swing.JButton("add");
ab.addActionListener(new eventHandler());
이벤트 핸들러 클래스, 버튼 클래스 이벤트 핸들러의 객체를 생성 방법의 ActionListener 호출 "추가"
public class Eventhandler implements java.awt.event.ActionListener {
@Override
public void actionPerformed(java.awt.event.ActionEvent e) {
example1.Flower flower;
flower = new example1.Flower();
모든 것이 잘 작동하지만 난 그렇게 할 때, 이벤트 핸들러에 코드의 조각을 추가하는 어려움이 버튼을 누르면 - 프로그램 클래스에 의해 생성 된 지상에 꽃을 만들어야합니다. 개체간에이 연결을 어떻게 설정해야합니까?
감사합니다 :)
당신이 이벤트 핸들러는 추가 할 필요가 무엇인지에 대한 참조를해야 할 것입니다 ... 버튼을 사용하여 수행 할 수있는 작업 (즉, 플로우 추가)을 제공하고 구현하는 것을 고려하고 불필요하게 프레임 /지면을 드러내 기보다는 이벤트 핸들러에 전달하십시오. – MadProgrammer
@markspace 그러나 'EventHandler'는 어떻게 생각합니까?). – MadProgrammer
EventHandler 클래스에 코드를 추가하려고했지만 "추가"버튼을 누르면 cr이 추가됩니다. 또 다른 "Ground"창을 띄웁니다. 내가 이해 한대로 - 나는 프로그램 클래스에 의해 생성 된 Ground에 대한 참조를 추가해야하지만 어떻게 든 EventHandler 클래스에서 그것을 할 수 있습니까? – Jaye