1

大家好,我想知道为什么我在这里拥有的名为 colin 的 gui 上的 2 个 jbutton 无法正常工作gui 在线程“AWT-EventQueue-0”java.lang.UnsupportedOperationException 中给了我异常:尚未实现消息我已经尝试了几种方法来改变它但无济于事,因为我想要做的就是在按下按钮时调出个人 gui

import javax.swing.JButton;

public class colin extends javax.swing.JFrame {

    private static class e {
        private static Object getSource() {
            throw new UnsupportedOperationException("Not yet implemented");
        }
        public e() {
        }
    }

    private static class newcar {
        public newcar() {
        }
    }
    private Object newcar_frame;

    private static class newcar_frame_frame {
        public newcar_frame_frame() {
        }
    }

    /**
     * Creates new form colin
     */
    public colin() {
        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">
    private void initComponents() {
        Ok = new java.awt.Button();
        motor = new java.awt.Button();
        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        Ok.setLabel("button1");
        Ok.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {
                OkActionPerformed(evt);
            }
        });
        motor.setLabel("button1");
        motor.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {
                motorActionPerformed(evt);
            }
        });
        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(95, 95, 95).addComponent(Ok, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addGap(80, 80, 80).addComponent(motor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addContainerGap(111, Short.MAX_VALUE)));
        layout.setVerticalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup().addContainerGap(154, Short.MAX_VALUE).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(motor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(Ok, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addGap(122, 122, 122)));

        pack();
    }// </editor-fold>

    private void OkActionPerformed(java.awt.event.ActionEvent evt) {
        //if(evt.getSource()==Ok){
        userino_frame s = new userino_frame();
        s.setVisible(true);
    }

    private void motorActionPerformed(java.awt.event.ActionEvent evt) {
        //if(evt.getSource()==Clear){
        motor_frame v = new motor_frame();
        v.setVisible(true);
    }

    /**
     * @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(colin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(colin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(colin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(colin.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 colin().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private java.awt.Button Ok;
    private java.awt.Button motor;
    // End of variables declaration
}
4

2 回答 2

2
  1. 使用CardLayout而不是创建许多顶级容器

  2. 将内容 放在卡片上userino_frame s = new userino_frame();motor_frame v = new motor_frame();

  3. 来自JButtonActionListener只是为了在这两张卡之间切换视图

于 2012-08-09T13:22:03.413 回答
0

您似乎忘记实现该功能:

    private static Object getSource() {
        throw new UnsupportedOperationException("Not yet implemented");
    }

您必须throw用实际逻辑替换该行。

于 2012-08-09T13:17:34.867 回答