JTextfield 数组,检索名称和文本
JTextfield array, retrieve name and text
我有一个 JTextField
数组,当 JTextField
被修改时,我想要 JTextField
的名称和文本。
while ((line = bufferedReader.readLine()) != null) { // 1 by 1 line of file
if (f == 6) {
g++;
f = 0;
}
tableauDonnee[g][f] = line;
fields[g][f] = new JTextField(tableauDonnee[g][f]);
fields[g][f].setName(String.valueOf(g + etf));
fields[g][f].setBounds(positionY, positionX, 160, 40);
pan.add(fields[g][f]);
positionY = positionY + 180;
f++;
我可以在将 JTextField
添加到面板之前执行此操作
fields[g][f].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
textfield = fields[g][f].getText();
nameTextfield = fields[g][f].getName();
}
});
但它不会工作,因为 g
和 f
的值不好。
我卡住了,不知道该怎么办。
您可以从 ActionEvent
:
中获取事件源(即您按下 Enter 键的文本字段)
public void actionPerformed(ActionEvent event)
{
JTextField textField = (JTextField)event.getSource();
...
}
另外,为什么要使用文本字段的二维数组。
我建议 JTable
是更好用的组件。阅读 How to Use Tables 上的 Swing 教程部分了解更多信息。
我有一个 JTextField
数组,当 JTextField
被修改时,我想要 JTextField
的名称和文本。
while ((line = bufferedReader.readLine()) != null) { // 1 by 1 line of file
if (f == 6) {
g++;
f = 0;
}
tableauDonnee[g][f] = line;
fields[g][f] = new JTextField(tableauDonnee[g][f]);
fields[g][f].setName(String.valueOf(g + etf));
fields[g][f].setBounds(positionY, positionX, 160, 40);
pan.add(fields[g][f]);
positionY = positionY + 180;
f++;
我可以在将 JTextField
添加到面板之前执行此操作
fields[g][f].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
textfield = fields[g][f].getText();
nameTextfield = fields[g][f].getName();
}
});
但它不会工作,因为 g
和 f
的值不好。
我卡住了,不知道该怎么办。
您可以从 ActionEvent
:
public void actionPerformed(ActionEvent event)
{
JTextField textField = (JTextField)event.getSource();
...
}
另外,为什么要使用文本字段的二维数组。
我建议 JTable
是更好用的组件。阅读 How to Use Tables 上的 Swing 教程部分了解更多信息。