Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
import java.awt.*;

import javax.swing.*;

public class Main {
    public static Rectangle getTextRectangle(JLabel label) {

        String text = label.getText();
        Icon icon = (label.isEnabled()) ? label.getIcon() : label.getDisabledIcon();

        if ((icon == null) && (text == null)) {
            return null;
        }

        Rectangle paintIconR = new Rectangle();
        Rectangle paintTextR = new Rectangle();
        Rectangle paintViewR = new Rectangle();
        Insets paintViewInsets = new Insets(0, 0, 0, 0);

        paintViewInsets = label.getInsets(paintViewInsets);
        paintViewR.x = paintViewInsets.left;
        paintViewR.y = paintViewInsets.top;
        paintViewR.width = label.getWidth() - (paintViewInsets.left + paintViewInsets.right);
        paintViewR.height = label.getHeight() - (paintViewInsets.top + paintViewInsets.bottom);

        Graphics g = label.getGraphics();
        if (g == null) {
            return null;
        }
        String clippedText = SwingUtilities.layoutCompoundLabel(label, g.getFontMetrics(), text, icon,
                label.getVerticalAlignment(), label.getHorizontalAlignment(), label.getVerticalTextPosition(),
                label.getHorizontalTextPosition(), paintViewR, paintIconR, paintTextR, label.getIconTextGap());

        return paintTextR;
    }
}