2015-12-18 23 views
-3

我有兩個jFrame main.javaNewMasterDetailForm.java。使用下面的代碼我試圖打開NewMasterDetailForm.java,但它是不開放 -NewMasterDetailForm無法使用setVisible(true)

NewMasterDetailForm call= new NewMasterDetailForm(); 
call.setVisible(true); 

我還試過

new NewMasterDetailForm().setVisible(true) 

我已經把上面的代碼放到一個按鈕和完整代碼是使用IDE NetBeans中內置的功能,它已經產生自己整個腳本如下

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
NewMasterDetailForm call= new NewMasterDetailForm(); 
call.setVisible(true);  

    } 

我創建NewMasterDetailForm.java。它主要由與MySQL的連接信息組成,並從中獲取細節。 NewMasterDetailForm.java包含下面的代碼

package yc; 

import java.awt.EventQueue; 
import java.beans.Beans; 
import javax.swing.JFrame; 
import javax.swing.JPanel; 

/** 
* 
* @author Raam 
*/ 
public class NewMasterDetailForm extends JPanel { 

    public NewMasterDetailForm() { 
     initComponents(); 
     if (!Beans.isDesignTime()) { 
      entityManager.getTransaction().begin(); 
      this.setOpaque(true); 
     } 
    } 

    /** 
    * This method is called from within the constructor to initialize the form. 
    * WARNING: Do NOT modify this code. The content of this method is always 
    * regenerated by the Form Editor. 
    */ 
    @SuppressWarnings("unchecked") 
    // <editor-fold defaultstate="collapsed" desc="Generated Code">       
    private void initComponents() { 
     bindingGroup = new org.jdesktop.beansbinding.BindingGroup(); 

     entityManager = java.beans.Beans.isDesignTime() ? null : javax.persistence.Persistence.createEntityManagerFactory("yello_cab?zeroDateTimeBehavior=convertToNullPU").createEntityManager(); 
     query = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT y FROM YcTable y"); 
     list = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : org.jdesktop.observablecollections.ObservableCollections.observableList(query.getResultList()); 
     masterScrollPane = new javax.swing.JScrollPane(); 
     masterTable = new javax.swing.JTable(); 
     jButton1 = new javax.swing.JButton(); 
     jLabel1 = new javax.swing.JLabel(); 
     jLabel2 = new javax.swing.JLabel(); 
     jLabel3 = new javax.swing.JLabel(); 

     FormListener formListener = new FormListener(); 

     org.jdesktop.swingbinding.JTableBinding jTableBinding = org.jdesktop.swingbinding.SwingBindings.createJTableBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, list, masterTable); 
     org.jdesktop.swingbinding.JTableBinding.ColumnBinding columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${bookId}")); 
     columnBinding.setColumnName("Book Id"); 
     columnBinding.setColumnClass(Integer.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${cuName}")); 
     columnBinding.setColumnName("Cu Name"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${mobile}")); 
     columnBinding.setColumnName("Mobile"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${noPersons}")); 
     columnBinding.setColumnName("No Persons"); 
     columnBinding.setColumnClass(Integer.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${email}")); 
     columnBinding.setColumnName("Email"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${gender}")); 
     columnBinding.setColumnName("Gender"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${cabType}")); 
     columnBinding.setColumnName("Cab Type"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${PPoint}")); 
     columnBinding.setColumnName("PPoint"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${DPoint}")); 
     columnBinding.setColumnName("DPoint"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${PTime}")); 
     columnBinding.setColumnName("PTime"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${PDate}")); 
     columnBinding.setColumnName("PDate"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${riderType}")); 
     columnBinding.setColumnName("Rider Type"); 
     columnBinding.setColumnClass(String.class); 
     columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${paymentMode}")); 
     columnBinding.setColumnName("Payment Mode"); 
     columnBinding.setColumnClass(String.class); 
     bindingGroup.addBinding(jTableBinding); 

     masterScrollPane.setViewportView(masterTable); 

     jButton1.setText("Close"); 
     jButton1.addActionListener(formListener); 

     jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/yc/yc.png"))); // NOI18N 

     jLabel2.setFont(new java.awt.Font("Tahoma", 2, 18)); // NOI18N 
     jLabel2.setText("Contact 24x7 "); 

     jLabel3.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N 
     jLabel3.setText("1800-1100-MEGHA"); 

     javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); 
     this.setLayout(layout); 
     layout.setHorizontalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(layout.createSequentialGroup() 
       .addContainerGap() 
       .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
        .addComponent(masterScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 804, Short.MAX_VALUE) 
        .addGroup(layout.createSequentialGroup() 
         .addComponent(jLabel1) 
         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
          .addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING) 
          .addComponent(jLabel3, javax.swing.GroupLayout.Alignment.TRAILING))) 
        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() 
         .addGap(0, 0, Short.MAX_VALUE) 
         .addComponent(jButton1))) 
       .addContainerGap()) 
     ); 
     layout.setVerticalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(layout.createSequentialGroup() 
       .addContainerGap() 
       .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
        .addComponent(jLabel1) 
        .addGroup(layout.createSequentialGroup() 
         .addComponent(jLabel2) 
         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) 
         .addComponent(jLabel3))) 
       .addComponent(masterScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 452, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
       .addComponent(jButton1) 
       .addContainerGap()) 
     ); 

     bindingGroup.bind(); 
    } 

    // Code for dispatching events from components to event handlers. 

    private class FormListener implements java.awt.event.ActionListener { 
     FormListener() {} 
     public void actionPerformed(java.awt.event.ActionEvent evt) { 
      if (evt.getSource() == jButton1) { 
       NewMasterDetailForm.this.jButton1ActionPerformed(evt); 
      } 
     } 
    }// </editor-fold>       

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
     new main().setVisible(true); 
     this.setVisible(false); 

    }           




    // Variables declaration - do not modify      
    private javax.persistence.EntityManager entityManager; 
    private javax.swing.JButton jButton1; 
    private javax.swing.JLabel jLabel1; 
    private javax.swing.JLabel jLabel2; 
    private javax.swing.JLabel jLabel3; 
    private java.util.List<yc.YcTable> list; 
    private javax.swing.JScrollPane masterScrollPane; 
    private javax.swing.JTable masterTable; 
    private javax.persistence.Query query; 
    private org.jdesktop.beansbinding.BindingGroup bindingGroup; 
    // End of variables declaration     
    public static void main(String[] args) { 
     /* Set the Nimbus look and feel */ 
     //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> 
     /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. 
     * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
     */ 
     try { 
      for (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(NewMasterDetailForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (InstantiationException ex) { 
      java.util.logging.Logger.getLogger(NewMasterDetailForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (IllegalAccessException ex) { 
      java.util.logging.Logger.getLogger(NewMasterDetailForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } catch (javax.swing.UnsupportedLookAndFeelException ex) { 
      java.util.logging.Logger.getLogger(NewMasterDetailForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
     } 
     //</editor-fold> 

     /* Create and display the form */ 
     EventQueue.invokeLater(new Runnable() { 
      public void run() { 
       JFrame frame = new JFrame(); 
       frame.setContentPane(new NewMasterDetailForm()); 
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
       frame.pack(); 
       frame.setVisible(true); 
      } 
     }); 
    } 

} 
+3

考慮提供一個[runnable示例](https://stackoverflow.com/help/mcve),它演示了您的問題。這不是代碼轉儲,而是您正在做的事情的一個例子,它突出了您遇到的問題。這會減少混淆和更好的反應 – MadProgrammer

+0

我很抱歉,但您應該尊重StackOver上的其他人。事實上,我相信你從來沒有使用過NewMasterDetailForm和jFrame。 –

+1

我從來沒有使用過'NewMasterDetailForm',因爲你從來沒有向我們展示過'JFrame',現在,我已經使用了16年以上,自Java 1.3以來,但當然,尊重,如果你不想要我們的幫助,當然,完全是你的選擇 – MadProgrammer

回答

2

NewMasterDetailFormJPanel,你需要用它在某種窗口,像JFrame,類似於類的最後部分main方法,例如

JFrame frame = new JFrame(); 
frame.setContentPane(new NewMasterDetailForm()); 
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
frame.pack(); 
frame.setVisible(true); 
+0

'DIPODR_CLOSE'? – user1803551

+0

@ user1803551在手機上鍵入 – MadProgrammer

+0

O.K.,修復了它:) – user1803551

相關問題