读书人

NetBeans中用界面设计器通过拖动控件构

发布时间: 2012-05-24 11:55:41 作者: rapoo

NetBeans中用界面设计器通过拖动控件构成界面的代码,能用到eclipse中吗?

发现用 NetBeans中用界面设计器生成的文件中,除了一个.java文件,还有一个.form文件

但java文件中的代码比较乱呀,在eclipse中就是几行便可以写出这几个按钮呀

不知,这样乱的源码能否在eclipse中直接用?据说NetBeans不是开源的,用NetBeans中用界面设计器生成的源码别的编译器没法用,不知是否是这么回事

实例:



Java code
/* * 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} 



[解决办法]
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");

读书人网 >J2SE开发

热点推荐