swing - ActionListener Unorthodox Infinate Frame Java -
so i'm trying actionlistener work when click on button. whenever create frame though, (the error seems happening in createcomponents() method, , can not see why) jvm keeps generating infinite instances of mycustomframe object.
import java.awt.*; import javax.swing.*; import java.awt.event.*; public class mycustomframe extends jframe { private jbutton button; private jlabel label; private static final int frame_width = 800; private static final int frame_height = 800; public static void main(string[] args) { mycustomframe frame = new mycustomframe(); frame.settitle("my first frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setvisible(true); } public mycustomframe() { settitle("my custom frame"); setdefaultcloseoperation(jframe.exit_on_close); setsize(frame_width,frame_height); setvisible(true); createcomponents(); } private void createcomponents() { button = new jbutton("click me!"); clicklistener listener = new clicklistener(); button.addactionlistener(listener); label = new jlabel("hello, world!"); jpanel panel = new jpanel(); panel.add(button); panel.add(label); add(panel); } class clicklistener extends mycustomframe implements actionlistener { public void actionperformed(actionevent e) { label.settext("button clicked."); } } }
class clicklistener extends mycustomframe implements actionlistener a mouselistener has no reason extend frame. show every time create listener create frame, creates listener , on.
the code should be:
class clicklistener implements actionlistener
Comments
Post a Comment