java - How can I make a 'Play ' button in a JFrame go to another class without adding another JFrame? -


i did code once user clicked on button play shows class called jframe4 show jframe

private void jbutton2mouseclicked(java.awt.event.mouseevent evt) {                                          joptionpane.showmessagedialog(null, "this .....","aide",joptionpane.information_message); }                                       private void jbutton1actionperformed(java.awt.event.actionevent evt) {                                              dispose();     jframe4 play= new jframe4();      play.setvisible(true); }                                          private void jbutton3actionperformed(java.awt.event.actionevent evt) {                                              dispose(); }          

and here's class jframe4:

public class jframe4 extends javax.swing.jframe {  /**  * creates new form jframe4  */ public jframe4() {     initcomponents(); }  /**  * method called within constructor initialize form.  * warning: not modify code. content of method  * regenerated form editor.  */ @suppresswarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="generated code">                           private void initcomponents() {      jpanel1 = new javax.swing.jpanel();     jlabel2 = new javax.swing.jlabel();     jbutton1 = new javax.swing.jbutton();     jlabel1 = new javax.swing.jlabel();      setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close);      jpanel1.setlayout(null);      jlabel2.setfont(new java.awt.font("tahoma", 1, 48)); // noi18n     jlabel2.setforeground(new java.awt.color(0, 51, 51));     jlabel2.settext("welcome");     jpanel1.add(jlabel2);     jlabel2.setbounds(130, 10, 760, 70);      jbutton1.setfont(new java.awt.font("tahoma", 1, 14)); // noi18n     jbutton1.settext("back menu ");     jbutton1.addactionlistener(new java.awt.event.actionlistener() {         public void actionperformed(java.awt.event.actionevent evt) {             jbutton1actionperformed(evt);         }     });     jpanel1.add(jbutton1);     jbutton1.setbounds(720, 480, 170, 25);      jlabel1.seticon(new javax.swing.imageicon("c:\\users\\asus\\desktop\\files\\40639a0054b339d12685d654878daa25.jpg")); // noi18n     jpanel1.add(jlabel1);     jlabel1.setbounds(0, 0, 910, 530);      javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane());     getcontentpane().setlayout(layout);     layout.sethorizontalgroup(         layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)         .addcomponent(jpanel1, javax.swing.grouplayout.default_size, 915, short.max_value)     );     layout.setverticalgroup(         layout.createparallelgroup(javax.swing.grouplayout.alignment.leading)         .addcomponent(jpanel1, javax.swing.grouplayout.default_size, 531, short.max_value)     );      pack(); }// </editor-fold>                          private void jbutton1actionperformed(java.awt.event.actionevent evt) {                                              dispose();     newjframe play= new newjframe();      play.setvisible(true); }                                          /**  * @param args command line arguments  */ public static void main(string args[]) {     /* set nimbus , feel */     //<editor-fold defaultstate="collapsed" desc=" , feel setting code (optional) ">     /* if nimbus (introduced in java se 6) not available, stay default , feel.      * details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html       */     try {         (javax.swing.uimanager.lookandfeelinfo info : javax.swing.uimanager.getinstalledlookandfeels()) {             if ("nimbus".equals(info.getname())) {                 javax.swing.uimanager.setlookandfeel(info.getclassname());                 break;             }         }     } catch (classnotfoundexception ex) {         java.util.logging.logger.getlogger(jframe4.class.getname()).log(java.util.logging.level.severe, null, ex);     } catch (instantiationexception ex) {         java.util.logging.logger.getlogger(jframe4.class.getname()).log(java.util.logging.level.severe, null, ex);     } catch (illegalaccessexception ex) {         java.util.logging.logger.getlogger(jframe4.class.getname()).log(java.util.logging.level.severe, null, ex);     } catch (javax.swing.unsupportedlookandfeelexception ex) {         java.util.logging.logger.getlogger(jframe4.class.getname()).log(java.util.logging.level.severe, null, ex);     }     //</editor-fold>      /* create , display form */     java.awt.eventqueue.invokelater(new runnable() {         public void run() {             new jframe4().setvisible(true);         }     }); }  // variables declaration - not modify                      private javax.swing.jbutton jbutton1; private javax.swing.jlabel jlabel1; private javax.swing.jlabel jlabel2; private javax.swing.jpanel jpanel1; // end of variables declaration                    } 

but want stay on same frame (like usual games).

simply swap contents:

private void jbutton1actionperformed(java.awt.event.actionevent evt) {                                              dispose();     jpanel play= new jframe4().getcontentpane();      myframe.setcontentpane(play); } 

note, heavily violate swing's conventions, not directly passing event action listener, signature:

public void actionperformed(actionevent evt) 

Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -