窗口中有很多文本框,单击某个文本框,要怎么获得对应的文本框对象啊?
我的想法是遍历所有的text对象,然后利用text.isFocusControl,这个不是判断该text是否获得焦点的么,
为什么老报错。
还有,我写了一个监听线程,就是一旦某个文本框获得焦点,就做相应的操作。
各位辛苦了!
------解决方案--------------------------------------------------------
- Java code
import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.event.FocusEvent;import java.awt.event.FocusListener;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JTextField;public class TestText extends JFrame implements FocusListener { private JTextField[] txts = new JTextField[3]; public TestText() { getContentPane().setLayout(new FlowLayout()); for (int i = 0; i < txts.length; i++) { txts[i] = new JTextField("Test" + i); txts[i].setName("我是Text:" + i); txts[i].setPreferredSize(new Dimension(70, 20)); txts[i].addFocusListener(this); getContentPane().add(txts[i]); } setDefaultCloseOperation(EXIT_ON_CLOSE); setSize(300, 200); } public void focusGained(FocusEvent e) { System.out.println(((JComponent) e.getSource()).getName()); } public void focusLost(FocusEvent e) { } public static void main(String[] args) { TestText frame = new TestText(); frame.setVisible(true); }}
------解决方案--------------------------------------------------------