发现用 NetBeans中用界面设计器生成的文件中,除了一个.java文件,还有一个.form文件但java文件中的代码比较乱呀,在eclipse中就是几行便可以写出这几个按钮呀不知,这样乱的源码能否在eclipse中直接用?据说NetBeans不是开源的,用NetBeans中用界面设计器生成的源码别的编译器没法用,不知是否是这么回事实例:/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package lexue;/**
 *
 * @author Admin
 */
public class MainJFrame extends javax.swing.JFrame {    /**
     * Creates new form MainJFrame
     */
    public MainJFrame() {
        initComponents();
    }    /**
     * 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">//GEN-BEGIN:initComponents
    private void initComponents() {        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton4 = new javax.swing.JButton();        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);        jButton1.setText("1");
        jButton1.setActionCommand("jButton1");        jButton2.setText("2");
        jButton2.setActionCommand("jButton2");        jButton4.setText("3");
        jButton4.setActionCommand("jButton3");        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(47, 47, 47)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(396, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(160, 160, 160)
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(183, Short.MAX_VALUE))
        );        pack();
    }// </editor-fold>//GEN-END:initComponents    /**
     * @param args the command line arguments
     */
    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(MainJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(MainJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(MainJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(MainJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {            public void run() {
                new MainJFrame().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton4;
    // End of variables declaration//GEN-END:variables
}

解决方案 »

  1.   

    另外问一下:JButton b=new JButton("1");这个"1"对应的是button的ActionCommand属性但NetBeans中,b 算是它的什么属性呀??还是说,就是按添加的先后顺序默认为jButton几,没法更改??
      

  2.   

    jButton1.setText("1");
    就是
    JButton b=new JButton();
    b.setText("1");
    我没用过NetBeans 查API就可以了,NetBeans就可以了,他只不过用java的API写的代码,连封装都没有封装。
    只要你没看见他导入别的包,就去API找什么意思。不会凭空捏造出来的。
    setActionCommand(String command) 
              设置此按钮激发的动作事件的命令名称。
    默认的ActionCommand 应该是"1",设置这个之后就变成"jButton1"
    jButton1.setActionCommand("jButton1");
      

  3.   

    测试了下,发现只要拖入按钮,然后把text改为A就是这样的 JButton jButton1=new JButton();
              jButton1.setText("A");
    但我想问的就是,我让它叫jButton1就不行吗??
      

  4.   

    失误,上面打错了。应该是 我让它叫jButton1就不行吗??
      

  5.   

    jButton1你是指这个对象引用 JButton jButton1=new JButton();
    还是ActionCommand?
      

  6.   


    jButton1 是新建的一个JButton的一个实例的名字。貌似netbeans自动管理的,不让手动指定名称
      

  7.   

    放到eclipse中改,应该只是了引用,改了没什么大问题。
      

  8.   

    右键菜单:change variable name ...