让JTextField文本框响应焦点事件 即可.
核心代码
JTextField jtf= new JTextField(10)jtf.addFocusListener(new FocusListener() { public void focusLost(FocusEvent e) {//失去焦点时 System.out.println("失去了焦点") jtf.setBackground(Color.WHITE) } public void focusGained(FocusEvent e) {//获得焦点时 System.out.println("获得了焦点") tf.setBackground(Color.PINK) }})效果图
参考代码
import java.awt.*import java.awt.event.*import javax.swing.* public class TextFrame extends JFrame { JTextField jtf public TextFrame() { JPanel jp = new JPanel() jtf= new JTextField(10) jtf.addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) {//失去焦点时 System.out.println("失去了焦点") jtf.setBackground(Color.WHITE) } @Override public void focusGained(FocusEvent e) {//获得焦点时 System.out.println("获得了焦点") jtf.setBackground(Color.PINK) } }) jp.add(jtf) JButton jb = new JButton("点击按钮, 文本框会失去焦点") add(jb,BorderLayout.NORTH) add(jp,BorderLayout.SOUTH) setTitle("DEMO") setSize(300,220)// 窗口大小 setLocationRelativeTo(null)// 窗口居中 setDefaultCloseOperation(EXIT_ON_CLOSE)// 窗口点击关闭时,退出程序 setVisible(true) } public static void main(String[] args) { new TextFrame() } }一般在jframe中用如下代码实现: in = new JTextField(40)f.addWindowListener( new WindowAdapter() { public void windowOpened( WindowEvent e ){ in.requestFocus()} })f是你的Jframe对象,in是JTextField对象。Java编码中焦点改变问题,做个登陆界面案例,输入用户名的是JCombobox;输入密码是JPasswordText;当软件启动的时候,让光标焦点默认在密码输入框内代码如下:
import java.awt.*import javax.swing.*
public class requestFocusLnWindowDemo extends JFrame{
public requestFocusLnWindowDemo() {
Container c = this.getContentPane()
c.setLayout(new BorderLayout())
JTextField j = new JTextField("希望光标在下面",10)
final JTextField j1 = new JTextField(10)
c.add(j,BorderLayout.NORTH)
c.add(j1,BorderLayout.SOUTH)
this.setSize(300,200)
this.setLocationRelativeTo(null)//这句可以使窗口在屏幕中间显示
this.setVisible(true)
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
SwingUtilities.invokeLater(new Runnable(){
public void run(){
j1.requestFocusInWindow()
}
})
}
public static void main(String []args){
new requestFocusLnWindowDemo()
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)