2016-01-30 35 views
0

我为学校学生准备了一个小型项目。我想告诉像一些话“苹果”“橙色”等,这些话会在JTextField而回车键using.The字必须被一个再来一个。我为它做了小代码,但它不能正常工作。它只显示第一个单词。以下是我的代码。如何使用Netbeans自动更改Jtextfield中的字符

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

    int c = 0; 
    if (c==0) 
    { 
     jTextField1.setText("apple"); 
    } 

    if (c==1) 
    { 
     jTextField1.setText("mango"); 
    } 

    if (c==2) 
    { 
     jTextField1.setText("banana"); 
    } 

    if (c==3) 
    { 
     jTextField1.setText("orange"); 
    } 

    if (c==4) 
    { 
     jTextField1.setText("like"); 
    } 

    if(c==5) 
    { 
     jTextField1.setText("it"); 
    } 
    } 
+2

您总是将c设置为0,因此第一个条件总是为真。我不知道“c”代表什么,所以我不能给你一个关于如何解决问题的建议。也许“c”应该是一个实例变量而不是一个局部变量,并且每次执行操作时只需将它加1。 – camickr

+0

@camickr所以如果我删除c如何在Jtextfield中一个接一个的话? – user5840896

+0

@HovercraftFullOfEels你能分享一个示例代码吗? – user5840896

回答

1

您的计数器需要是您的班级中的一个字段,而不是本地变量。您应该使用字符串数组或ArrayList<String>,并使用计数器从您的集合中获取适当的字符串。

public void actionPerformed(ActionEvent e) { 
    counter++; // this is an instance field in the class. 
    if (counter < myArray.length) { 
     myTextField.setText(myArray[counter]); 
    } 
} 
+0

可以请您扩展完整的代码。我有一些错误。所以我想你会写完整的代码 – user5840896

+0

我在等你的回复 – user5840896

+1

@ user5840896请不要要求完整的代码。我们是志愿者,所以努力的责任应该是你的。如果您的代码仍然有问题,那么更好的做法是更新您的问题,显示最新的代码,显示和描述以及所有问题。 –