Index

Table of contents

Java Swing

updating a component in already visible Container:
frame.getContentPane().validate();
frame.getContentPane().repaint();
getting the active window (or null if application is not selected)
Window active = FocusManager.getCurrentManager().getActiveWindow();

components

JTable

adding a mouse double click listener
mytable.addMouseListener(new MouseAdapter() {
    public void mousePressed(MouseEvent event) {
        JTable table = (JTable) event.getSource();
        int row = table.rowAtPoint(event.getPoint());
        if (event.getClickCount() == 2 && table.getSelectedRow() != -1) {
            // todo: code goes here
        }
    }
});

borders

add border to component
component.setBorder(BorderFactory.createLineBorder(Color.white))
add border with padding to component
component.setBorder(BorderFactory.createCompoundBorder(new LineBorder(Color.red), new EmptyBorder(10, 10, 10, 10)));

UIManager / look and feel

set a global UI property
UIManager.getLookAndFeelDefaults().put("[key]", [value]));
list all keys for current look and feel
UIDefaults defaults = UIManager.getDefaults();
        Enumeration<?> e = defaults.keys();
        while (e.hasMoreElements()) {
            Object key = e.nextElement();
            Object current = defaults.get(key);
            String value = current == null ? "" : current.getClass().toString();
            System.out.println(key + "=" + value);
        }
ideas for colors
https://colorhunt.co/palettes
hex to RGB
https://duckduckgo.com/?t=ffsb&q=hex+to+rgb&ia=answer