ButtonUtils.java 1.51 KB
package cn.csbr.app.gui.util;

import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.control.Button;
import javafx.scene.control.ButtonBar;
import javafx.scene.control.ContentDisplay;

/**
 * 按钮工具类
 */
public class ButtonUtils {
    public static Button createButton(String title, ButtonBar.ButtonData buttonData, EventHandler<ActionEvent> handler) {
        return createButton(title, buttonData, ButtonSize.instance(), handler);
    }

    public static Button createButton(String title, ButtonBar.ButtonData buttonData, ButtonSize size, EventHandler<ActionEvent> handler) {
        Button button = new Button(title);
        button.setMinWidth(size.wdith);
        button.setMinHeight(size.height);
        if (handler != null) {
            button.setOnAction(handler);
        }
        ButtonBar.setButtonData(button, buttonData);
        button.setStyle("-fx-background-color: white;-fx-border-radius: 6;-fx-border-color: #bababa");
        button.setPadding(new Insets(10,10,10,10));
//        button.setContentDisplay(ContentDisplay.TOP);
        return button;
    }

    public static Button createOkButton(String title, ButtonSize size, EventHandler<ActionEvent> handler) {
        return ButtonUtils.createButton(title, ButtonBar.ButtonData.OK_DONE, size, handler);
    }

    public static Button createOkButton(String title, EventHandler<ActionEvent> handler) {
        return ButtonUtils.createButton(title, ButtonBar.ButtonData.OK_DONE, handler);
    }
}