JTextField nameField=new JTextField;
nameField.addFocusListener(new FocusListener() {
            @Override
            public void focusLost(FocusEvent e) {
                                //设置文本框不可编辑后设置光标的可用性为false
                nameField.setEditable(false);
                nameField.getCaret().setVisible(false);
            }
                            
            @Override
            public void focusGained(FocusEvent e) {
                nameField.setEditable(true);
                                //设置光标的可用性为true
                nameField.getCaret().setVisible(true);
                //设置光标位置为文本内容最后面
                                nameField.setCaretPosition(nameField.getText().length());
                if(nameField.getText().equals("输入用户名")){
                    nameField.setText("");
                }else{
                                        //全选文本框中内容
                    nameField.selectAll();
                }
            }
        });