import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.SwingUtilities; import javax.swing.text.Highlighter; public class Textselektion { Highlighter hl = null; Color defaultSelTextColor, defaultSelColor; public Textselektion() { initGUI(); } private void initGUI() { final JTextField field = new JTextField(20); hl = field.getHighlighter(); defaultSelTextColor = field.getSelectedTextColor(); defaultSelColor = field.getSelectionColor(); final JButton highlightButt = new JButton("No Highlight"); highlightButt.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (field.getHighlighter() != null) { field.setHighlighter(null); highlightButt.setText("Highlight"); } else { field.setHighlighter(hl); highlightButt.setText("No Highlight"); } } }); final JButton selectButt = new JButton("Default Selection"); selectButt.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (field.getSelectionColor() != defaultSelColor) { field.setSelectionColor(defaultSelColor); field.setSelectedTextColor(defaultSelTextColor); selectButt.setText("Custom Colors"); } else { field.setSelectionColor(Color.GREEN); field.setSelectedTextColor(Color.RED); selectButt.setText("Default Colors"); } } }); JPanel buttPanel = new JPanel(new FlowLayout()); buttPanel.add(selectButt); buttPanel.add(highlightButt); JFrame frame = new JFrame("Selection-Test"); frame.add(buttPanel, BorderLayout.SOUTH); frame.add(field, BorderLayout.CENTER); frame.pack(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.setVisible(true); } public static void main(String[] args) { SwingUtilities.invokeLater(() -> new Textselektion()); } }