Example usage for javax.swing JButton setMargin

List of usage examples for javax.swing JButton setMargin

Introduction

In this page you can find the example usage for javax.swing JButton setMargin.

Prototype

@BeanProperty(visualUpdate = true, description = "The space between the button's border and the label.")
public void setMargin(Insets m) 

Source Link

Document

Sets space for margin between the button's border and the label.

Usage

From source file:util.ui.UiUtilities.java

/**
 * Gibt einen Button mit Icon und Schrift zurck, der so initialisiert ist,
 * da man ihn gut fr Symbolleisten nutzen kann (Rahmen nur bei Rollover
 * sichtbar usw.).//from w  w  w.j  av a  2 s .  c om
 * <P>
 * Wenn text und iconDateiname angegeben sind, dann wird text als TooltipText
 * gesetzt.
 *
 * @param text
 *          Der Text des Buttons (Kann null sein, wenn der Button keinen Text
 *          enthalten soll)
 * @param icon
 *          Das Icon des Buttons (Kann ebenfalls null sein, wenn der Button
 *          kein Icon enthalten soll).
 * @return button
 */
public static JButton createToolBarButton(String text, Icon icon) {
    final JButton btn;
    if (icon == null) {
        btn = new JButton(text);
    } else {
        btn = new JButton(icon);
        btn.setToolTipText(text);
        btn.setBorderPainted(false);
        btn.setMargin(ZERO_INSETS);

        btn.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseEntered(MouseEvent e) {
                if (btn.isEnabled()) {
                    btn.setBorderPainted(true);
                }
            }

            @Override
            public void mouseExited(MouseEvent e) {
                btn.setBorderPainted(false);
            }
        });
    }
    btn.setFocusPainted(false);

    return btn;
}