resizeline.java

来自「一个简单的visio程序。」· Java 代码 · 共 72 行

JAVA
72
字号
package webide.form;

import java.awt.*;

public class ResizeLine {

    public static void setResizeLine(Container container) {
        leftLine  = new Panel();
        rightLine = new Panel();
        topLine   = new Panel();
        bottomLine= new Panel();
        addLine(container);
        setLineColor(Color.black);
        setLineVisible(false);
    }//end of setRsizeLine.

    private static void addLine(Container container) {
        container.add(leftLine);
        container.add(rightLine);
        container.add(topLine);
        container.add(bottomLine);
    }//end of addLine

    public static void setLineVisible(boolean v) {
        leftLine.setVisible(v);
        rightLine.setVisible(v);
        topLine.setVisible(v);
        bottomLine.setVisible(v);
    }//end of setVisible.

    private static void setLineColor(Color color) {
        leftLine.setBackground(color);
        rightLine.setBackground(color);
        topLine.setBackground(color);
        bottomLine.setBackground(color);
    }//end of setLineColor.

    private static void setLineSize(Dimension dim) {
        int width = dim.width;
        int height= dim.height;

        leftLine.setSize(1,height);
        rightLine.setSize(1,height);
        topLine.setSize(width,1);
        bottomLine.setSize(width,1);
    }//end of setLineSize.

    public static void setLineLocation(Rectangle rec) {

        if (rec == null) return;

        int startx = rec.x;
        int starty = rec.y;

        int endx   = rec.x + rec.width;
        int endy   = rec.y + rec.height;

        setLineSize(new Dimension(rec.width,rec.height));

        leftLine.setLocation(startx,starty);
        rightLine.setLocation(endx,starty);

        topLine.setLocation(startx,starty);
        bottomLine.setLocation(startx,endy);
    }//end of setLineLocation.

    public static transient Panel leftLine  = null;
    public static transient Panel rightLine = null;
    public static transient Panel topLine   = null;
    public static transient Panel bottomLine= null;
}//end of ResizeLine.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?