2013-08-30 2 views
0

이런 질문이 많지만 대략 95 %를 읽었습니다. XD 기본적으로 내 코드에는 기본 클래스가 있지만 아직 그렇지 않습니다. 계속 하시겠습니까? 당신이 대략 3/4 방식을 볼 수실제로 클래스가 하나 인 경우 기본 메소드가 없습니다.

public class RegisterGUI extends javax.swing.JFrame { 

public RegisterGUI() { 
    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() { 

    PaySafeTitle = new javax.swing.JLabel(); 
    TitleLabel = new javax.swing.JLabel(); 
    FirstNameLabel = new javax.swing.JLabel(); 
    LastNameLabel = new javax.swing.JLabel(); 
    EmailAddLabel = new javax.swing.JLabel(); 
    UsernameLabel = new javax.swing.JLabel(); 
    PasswordLabel = new javax.swing.JLabel(); 
    ConfimationLabel = new javax.swing.JLabel(); 
    TitleList = new javax.swing.JComboBox(); 
    TitleField = new javax.swing.JTextField(); 
    FirstNameField = new javax.swing.JTextField(); 
    LastNameField = new javax.swing.JTextField(); 
    EmailAddField = new javax.swing.JTextField(); 
    UsernameField = new javax.swing.JTextField(); 
    PasswordField = new javax.swing.JPasswordField(); 
    ConfirmationField = new javax.swing.JPasswordField(); 
    PasswordMatchLabel = new javax.swing.JLabel(); 
    MatchResult = new javax.swing.JTextField(); 
    NextBtn = new javax.swing.JButton(); 

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 
    getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); 

    PaySafeTitle.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    PaySafeTitle.setIcon(new javax.swing.ImageIcon(getClass().getResource("/PaySafeLogo.png"))); // NOI18N 
    getContentPane().add(PaySafeTitle, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 11, 380, 37)); 

    TitleLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    TitleLabel.setText("Title:"); 
    getContentPane().add(TitleLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 54, 98, 23)); 

    FirstNameLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    FirstNameLabel.setText("First name:"); 
    getContentPane().add(FirstNameLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 83, 98, 23)); 

    LastNameLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    LastNameLabel.setText("Last name:"); 
    getContentPane().add(LastNameLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 112, 98, 23)); 

    EmailAddLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    EmailAddLabel.setText("Email Address:"); 
    getContentPane().add(EmailAddLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 141, 98, 23)); 

    UsernameLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    UsernameLabel.setText("Username:"); 
    getContentPane().add(UsernameLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 170, 98, 23)); 

    PasswordLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    PasswordLabel.setText("Password:"); 
    getContentPane().add(PasswordLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 199, 98, 23)); 

    ConfimationLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    ConfimationLabel.setText("Confirm Password:"); 
    getContentPane().add(ConfimationLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 228, 98, 23)); 

    TitleList.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Mr", "Mrs", "Miss", "Ms", "Dr", "Other..." })); 
    getContentPane().add(TitleList, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 55, 100, -1)); 

    TitleField.setEditable(false); 
    getContentPane().add(TitleField, new org.netbeans.lib.awtextra.AbsoluteConstraints(218, 55, 172, -1)); 
    getContentPane().add(FirstNameField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 84, 278, -1)); 
    getContentPane().add(LastNameField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 113, 278, -1)); 
    getContentPane().add(EmailAddField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 142, 278, -1)); 
    getContentPane().add(UsernameField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 171, 278, -1)); 

    PasswordField.addActionListener(new java.awt.event.ActionListener() { 
     public void actionPerformed(java.awt.event.ActionEvent evt) { 
      PasswordFieldActionPerformed(evt); 
     } 
    }); 
    getContentPane().add(PasswordField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 200, 170, -1)); 
    getContentPane().add(ConfirmationField, new org.netbeans.lib.awtextra.AbsoluteConstraints(112, 229, 170, -1)); 

    PasswordMatchLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 
    PasswordMatchLabel.setText("Password match:"); 
    getContentPane().add(PasswordMatchLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(290, 200, 100, 20)); 

    MatchResult.setEditable(false); 
    MatchResult.setHorizontalAlignment(javax.swing.JTextField.CENTER); 
    getContentPane().add(MatchResult, new org.netbeans.lib.awtextra.AbsoluteConstraints(290, 230, 100, -1)); 
    do{ 
     if((PasswordField.getPassword())==(ConfirmationField.getPassword())); 
     MatchResult.setText("MATCH"); 
    } 
    else{ 
     MatchResult.setText("NO MATCH"); 
    } 
    while((PasswordField.getPassword())!(ConfirmationField.getPassword())); 

    NextBtn.setText("Next"); 
    getContentPane().add(NextBtn, new org.netbeans.lib.awtextra.AbsoluteConstraints(180, 260, -1, -1)); 

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

private void PasswordFieldActionPerformed(java.awt.event.ActionEvent evt) {            
    // TODO add your handling code here: 
}            

/** 
* @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(RegisterGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (InstantiationException ex) { 
     java.util.logging.Logger.getLogger(RegisterGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (IllegalAccessException ex) { 
     java.util.logging.Logger.getLogger(RegisterGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (javax.swing.UnsupportedLookAndFeelException ex) { 
     java.util.logging.Logger.getLogger(RegisterGUI.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 RegisterGUI().setVisible(true); 
     } 
    }); 
} 
// Variables declaration - do not modify      
private javax.swing.JLabel ConfimationLabel; 
private javax.swing.JPasswordField ConfirmationField; 
private javax.swing.JTextField EmailAddField; 
private javax.swing.JLabel EmailAddLabel; 
private javax.swing.JTextField FirstNameField; 
private javax.swing.JLabel FirstNameLabel; 
private javax.swing.JTextField LastNameField; 
private javax.swing.JLabel LastNameLabel; 
private javax.swing.JTextField MatchResult; 
private javax.swing.JButton NextBtn; 
private javax.swing.JPasswordField PasswordField; 
private javax.swing.JLabel PasswordLabel; 
private javax.swing.JLabel PasswordMatchLabel; 
private javax.swing.JLabel PaySafeTitle; 
private javax.swing.JTextField TitleField; 
private javax.swing.JLabel TitleLabel; 
private javax.swing.JComboBox TitleList; 
private javax.swing.JTextField UsernameField; 
private javax.swing.JLabel UsernameLabel; 
// End of variables declaration     
} 

아래 주요 방법이 있지만, 넷빈즈는이 있음을 인정하지 않는 것 :/ 예이가 GUI 빌더를 사용하여 만들어, 그것은이다 우리는 비교적 새로운 것이기 때문에 수업 프로젝트를 처음부터 새로 시작하는 것보다 빠릅니다.

while((PasswordField.getPassword())!(ConfirmationField.getPassword())); 

그것은 잘못된 구문입니다

+3

netbeans는 어떤 오류를 반환합니까? – Math

+0

프로젝트> 새로 고침을 마우스 오른쪽 버튼으로 클릭 하시겠습니까? –

+0

당신의 코드는 괜찮습니다. 그래서 다른 IDE (Eclipse, intellij)를 시도해 볼 것을 제안합니다. 물론 net beans GUI 빌더 사용을 중단하십시오. 특히 GUI 빌더를 통해 생성 된 소스 코드를 잠그고 개발자가 편집 할 수 없습니다. 음, 적어도 그것을 사용하려고 할 때와 같았습니다. –

답변

2

이 줄은 파서를 엉망으로 할 수있다. 아마도 다음과 같은 의미 일 수 있습니다.

while((PasswordField.getPassword()) != (ConfirmationField.getPassword())); 

구문이 개선되었지만 여전히 논리적으로 올바르지 않습니다. != (또는 ==)을 사용하면 char[]과 같은 내용을 비교할 수 없습니다. 객체에 대해 참조 연산자가 동일한 객체를 가리키는 지 아닌지를 결정합니다. 내용을 비교하는 다른 방법이 필요합니다 (Arrays.equals(char[], char[])).

또한 중괄호는 do-while 루프에서 약간 벗어납니다. 코드는 : 당신이 if 예상 while없이 else를 얻을 수 있도록 여기에

do{ 
    if((PasswordField.getPassword())==(ConfirmationField.getPassword())); 
    MatchResult.setText("MATCH"); 
} 
else{ 
    MatchResult.setText("NO MATCH"); 
} 
while((PasswordField.getPassword())!(ConfirmationField.getPassword())); 

else 전에 중괄호, do 일치합니다. 또한 if 조건 다음에 ;if 문구 본문으로 계산되므로 불필요하며 잘못되었습니다. MatchResult.setText("MATCH")- 제거하십시오.

do { 
    if (Arrays.equals(PasswordField.getPassword(), ConfirmationField.getPassword())) 
     MatchResult.setText("MATCH"); 
    else { 
     MatchResult.setText("NO MATCH"); 
    } 
} 
while(!Arrays.equals(PasswordField.getPassword(), ConfirmationField.getPassword())); 

참고 중괄호가 시작하고 이전보다 끝 블록 더 나은 위치를 확인하는 데 도움이 들여 쓰기를 사용해보십시오.

+0

나는 당신의 코드를 포함 시켰고 적어도 프로그램을 실행할 수 있도록 허용했다. 그러나 "do while"루프가 잘못되었거나 다른 곳의 논리가 엉망이라고 생각한다. "MatchResult"가 "MATCH "PasswordField"와 "ConfirmationField"의 암호가 모두 같을 때 "MATCH"만 표시되는 순간 :/ 제안 사항이 있습니까? – LiamVanV

0

IDE에서 진입 점을 설정해야 할 수도 있습니다.

관련 문제