这是代码 String [] textfield = new String [8];
int a=600;
int b=100;
for (int i=0; i<8; ++i)
{
JTextField f = new JTextField(textfield[i]);
f.setBounds(a, b, 120, 25);
b+=30;
panel.add(f);
if (i==9) a=300;
if (i==9) b=10;
// Why Not Save Action in loop
}
现在,输入textfield后出现.setText(“”)[5] 我想看看:textfield [i] .setText(“Hello 5”);
答案 0 :(得分:1)
因为代码textField[i]
中的String
不是JTextField
。
将其更改如下。
JTextField[] textfield = new JTextFeild[8];
int a=600;
int b=100;
for (int i=0; i<8; ++i)
{
textField[i] = new JTextField();
textField[i].setText("My Text");
textField[i].setBounds(a, b, 120, 25);
b+=30;
panel.add(textField[i]);
if (i==9) a=300;
if (i==9) b=10;
// Why Not Save Action in loop
}
要打印JTextField
的文字,您应该使用JTextField.getText()
方法。
print.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { //
System.out.println("Error");
ramSlot2.setSelectedIndex(5);
String txt =textfield[5].getText();
System.out.println(txt);
}
答案 1 :(得分:0)
这样简单:(当i == 5时)
i = 5
textfield[i] = "Hello ";
String str = textfield[i] + i;
f.setText(str);
我认为您的textfield[i]
(当i == 5时)未启动