窗口中有很多文本框,单击某个文本框,要怎么获得对应的文本框对象啊?
我的想法是遍历所有的text对象,然后利用text.isFocusControl,这个不是判断该text是否获得焦点的么,
为什么老报错。
还有,我写了一个监听线程,就是一旦某个文本框获得焦点,就做相应的操作。
各位辛苦了!
我的想法是遍历所有的text对象,然后利用text.isFocusControl,这个不是判断该text是否获得焦点的么,
为什么老报错。
还有,我写了一个监听线程,就是一旦某个文本框获得焦点,就做相应的操作。
各位辛苦了!
解决方案 »
- Applet重绘问题
- java线程自动中止的问题
- 用JAVA写一个查寻的程序
- 请教一个JDBC-ODBC中的问题.....
- 如何给各树节点设置不同的图标
- 哪有AWT和SWING的完整源码下载,谁能提供一些,在下万分感谢
- 小小的问题,谢谢!!!
- 请问有谁知道“Visual J++ 6.0”在哪里能下载吗?:)
- 我想找兼职
- 简单问题! java中可以使用类似于 X + =10;的语句?
- 对于 java 连接sql server 2005的警告: Failed to load the sqljdbc_auth.dll
- 用FileReader和FileWriter 与 用FileOutputStream和FileInputStream 来完成文件之间的copy有什么区别么??
但是因为生成了很多文本框,每次那个ModifyListener只监听最后一个text组件,不解!!!!!--!
尝试了许久都没弄明白,gongfuliang 再说详细些巴,拿些代码来看看啊。
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);
}
}
不过要谢谢gongfuliang,又学到好东西了。荷荷