JTextField, mit grauem Hinweistext
Möchte man ein Textfield mit grauem Hinweistext, welcher beim Anklicken verschwindet, so hilft dieser Code:
public class PromptTextField extends JTextField { private String promptText; public PromptTextField(String promptText) { super(promptText); this.promptText = promptText; addFocusListener(new FocusListener() { public void focusGained(FocusEvent e) { PromptTextField.this.setForeground(Color.BLACK); if (PromptTextField.this.getText() != null && PromptTextField.this.getText().equals(promptText)) PromptTextField.this.setText(""); } public void focusLost(FocusEvent e) { if (PromptTextField.this.getText() == null || PromptTextField.this.getText().trim().length() == 0) PromptTextField.this.setText(promptText); if (PromptTextField.this.getText().equals(promptText)) { PromptTextField.this.setForeground(Color.LIGHT_GRAY); } } }); } }
Eine Verwendung sähe so aus:
JTextField tfExample = new PromptTextField("Bitte was eingeben!"); add(tfExample, BorderLayout.NORTH);
Stichworte:
JTextField, mit Hinweistext, grau, Prompt