我无法在netbeans jframe的猜词游戏中为重复的字母编写代码

时间:2015-12-11 23:21:23

标签: java netbeans

任何人都可以通过告诉我我的whileloop代码的问题来帮助我吗?为什么不是这封信" l"来自"你好"显示在下一个位置的单词?我该如何改变我所拥有的?

/ *  *要更改此许可证标题,请在“项目属性”中选择“许可证标题”。  *要更改此模板文件,请选择“工具”|模板  *并在编辑器中打开模板。  * /

/ **  *  * @author w1567187  * / 公共类GuessForm扩展了javax.swing.JFrame {

String FindWord = "hello";

/**
 * Creates new form GuessForm
 */
public GuessForm() {
    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() {

    char0 = new javax.swing.JLabel();
    char1 = new javax.swing.JLabel();
    char2 = new javax.swing.JLabel();
    char3 = new javax.swing.JLabel();
    char4 = new javax.swing.JLabel();
    char5 = new javax.swing.JLabel();
    tryLetter = new javax.swing.JButton();
    aLetter = new javax.swing.JTextField();
    inCorrect = new javax.swing.JLabel();
    MyMessage = new javax.swing.JLabel();
    imageOfHangman = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    char0.setText("X");

    char1.setText("X");

    char2.setText("X");

    char3.setText("X");

    char4.setText("X");

    char5.setText("X");

    tryLetter.setText("Try Letter");
    tryLetter.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            tryLetterActionPerformed(evt);
        }
    });

    aLetter.setText("e");

    inCorrect.setText("0");

    MyMessage.setText("Look here..");

    imageOfHangman.setText("jButton1");
    imageOfHangman.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            imageOfHangmanActionPerformed(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()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(MyMessage)
                        .addGroup(layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(inCorrect)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(aLetter)
                                    .addComponent(tryLetter, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                            .addGap(0, 0, Short.MAX_VALUE)))
                    .addGap(18, 18, 18))
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                    .addContainerGap(223, Short.MAX_VALUE)
                    .addComponent(char0)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(char1)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(char2)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(char3)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(char4)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(char5)
                    .addGap(213, 213, 213)))
            .addComponent(imageOfHangman, javax.swing.GroupLayout.PREFERRED_SIZE, 637, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addContainerGap())
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addGap(36, 36, 36)
                    .addComponent(tryLetter)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(aLetter, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(inCorrect)
                    .addGap(203, 203, 203)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(char0)
                        .addComponent(char1)
                        .addComponent(char2)
                        .addComponent(char3)
                        .addComponent(char4)
                        .addComponent(char5))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(MyMessage))
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(imageOfHangman, javax.swing.GroupLayout.DEFAULT_SIZE, 637, Short.MAX_VALUE)))
            .addContainerGap())
    );

    pack();
}// </editor-fold>//GEN-END:initComponents

private void tryLetterActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_tryLetterActionPerformed

int dd=Integer.parseInt(inCorrect.getText());             
String letter=aLetter.getText();
int charPos=FindWord.indexOf(letter);
MyMessage.setText("Position is"+ charPos);

if (charPos==-1) {                     
    dd=dd+1;        
    String ss=Integer.toString(dd);
    inCorrect.setText(ss);        
        if (dd == 1)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\1.png"));            
        if (dd == 2)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\2.png"));            
        if (dd == 3)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\3.png"));            
        if (dd == 4)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\4.png"));            
        if (dd == 5)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\5.png"));            
        if (dd == 6)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\6.png"));            
        if (dd == 7)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\7.png"));            
        if (dd == 8)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\8.png"));            
        if (dd == 9)  imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\9.png"));            
        if (dd == 10) imageOfHangman.setIcon(new javax.swing.ImageIcon("C:\\Users\\w1567187\\Desktop\\10.png"));            
        if (dd > 10)  MyMessage.setText("Game Over");    
}
else{
    if (charPos == 0)  char0.setText(letter);        
    if (charPos == 1)  char1.setText(letter);        
    if (charPos == 2)  char2.setText(letter);        
    if (charPos == 3)  char3.setText(letter);        
    if (charPos == 4)  char4.setText(letter);        
    if (charPos == 5)  char5.setText(letter);
}



   while (charPos >= 0) {
      charPos = FindWord.indexOf(letter, charPos + 1); 

    if (charPos == 0)  char0.setText(letter);        
    if (charPos == 1)  char1.setText(letter);        
    if (charPos == 2)  char2.setText(letter);        
    if (charPos == 3)  char3.setText(letter);        
    if (charPos == 4)  char4.setText(letter);        
    if (charPos == 5)  char5.setText(letter);
   }         
   //GEN-LAST:event_tryLetterActionPerformed
}




private void imageOfHangmanActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_imageOfHangmanActionPerformed
    // TODO add your handling code here:
}//GEN-LAST:event_imageOfHangmanActionPerformed

/**
 * @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(GuessForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(GuessForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(GuessForm.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(GuessForm.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 GuessForm().setVisible(true);
        }
    });
}

// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JLabel MyMessage;
private javax.swing.JTextField aLetter;
private javax.swing.JLabel char0;
private javax.swing.JLabel char1;
private javax.swing.JLabel char2;
private javax.swing.JLabel char3;
private javax.swing.JLabel char4;
private javax.swing.JLabel char5;
private javax.swing.JButton imageOfHangman;
private javax.swing.JLabel inCorrect;
private javax.swing.JButton tryLetter;
// End of variables declaration//GEN-END:variables

}

0 个答案:

没有答案