⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 absolutelayout.java

📁 一个很好的学生成绩管理系统
💻 JAVA
字号:
/* *                 Sun Public License Notice *  * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ *  * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun * Microsystems, Inc. All Rights Reserved. */package org.netbeans.lib.awtextra;import java.awt.*;/** AbsoluteLayout is a LayoutManager that works as a replacement for "null" layout to* allow placement of components in absolute positions.** @see AbsoluteConstraints* @version 1.01, Aug 19, 1998*/public class AbsoluteLayout implements LayoutManager2, java.io.Serializable {    /** generated Serialized Version UID */    static final long serialVersionUID = -1919857869177070440L;    /** Adds the specified component with the specified name to    * the layout.    * @param name the component name    * @param comp the component to be added    */    public void addLayoutComponent(String name, Component comp) {        throw new IllegalArgumentException();    }    /** Removes the specified component from the layout.    * @param comp the component to be removed    */    public void removeLayoutComponent(Component comp) {        constraints.remove(comp);    }    /** Calculates the preferred dimension for the specified    * panel given the components in the specified parent container.    * @param parent the component to be laid out    *    * @see #minimumLayoutSize    */    public Dimension preferredLayoutSize(Container parent) {        int maxWidth = 0;        int maxHeight = 0;        for (java.util.Enumeration e = constraints.keys(); e.hasMoreElements();) {            Component comp = (Component)e.nextElement();            AbsoluteConstraints ac = (AbsoluteConstraints)constraints.get(comp);            Dimension size = comp.getPreferredSize();            int width = ac.getWidth ();            if (width == -1) width = size.width;            int height = ac.getHeight ();            if (height == -1) height = size.height;            if (ac.x + width > maxWidth)                maxWidth = ac.x + width;            if (ac.y + height > maxHeight)                maxHeight = ac.y + height;        }        return new Dimension (maxWidth, maxHeight);    }    /** Calculates the minimum dimension for the specified    * panel given the components in the specified parent container.    * @param parent the component to be laid out    * @see #preferredLayoutSize    */    public Dimension minimumLayoutSize(Container parent) {        int maxWidth = 0;        int maxHeight = 0;        for (java.util.Enumeration e = constraints.keys(); e.hasMoreElements();) {            Component comp = (Component)e.nextElement();            AbsoluteConstraints ac = (AbsoluteConstraints)constraints.get(comp);            Dimension size = comp.getMinimumSize();            int width = ac.getWidth ();            if (width == -1) width = size.width;            int height = ac.getHeight ();            if (height == -1) height = size.height;            if (ac.x + width > maxWidth)                maxWidth = ac.x + width;            if (ac.y + height > maxHeight)                maxHeight = ac.y + height;        }        return new Dimension (maxWidth, maxHeight);    }    /** Lays out the container in the specified panel.    * @param parent the component which needs to be laid out    */    public void layoutContainer(Container parent) {        for (java.util.Enumeration e = constraints.keys(); e.hasMoreElements();) {            Component comp = (Component)e.nextElement();            AbsoluteConstraints ac = (AbsoluteConstraints)constraints.get(comp);            Dimension size = comp.getPreferredSize();            int width = ac.getWidth ();            if (width == -1) width = size.width;            int height = ac.getHeight ();            if (height == -1) height = size.height;            comp.setBounds(ac.x, ac.y, width, height);        }    }    /** Adds the specified component to the layout, using the specified    * constraint object.    * @param comp the component to be added    * @param constr  where/how the component is added to the layout.    */    public void addLayoutComponent(Component comp, Object constr) {        if (!(constr instanceof AbsoluteConstraints))            throw new IllegalArgumentException();        constraints.put(comp, constr);    }    /** Returns the maximum size of this component.    * @see java.awt.Component#getMinimumSize()    * @see java.awt.Component#getPreferredSize()    * @see LayoutManager    */    public Dimension maximumLayoutSize(Container target) {        return new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);    }    /** Returns the alignment along the x axis.  This specifies how    * the component would like to be aligned relative to other    * components.  The value should be a number between 0 and 1    * where 0 represents alignment along the origin, 1 is aligned    * the furthest away from the origin, 0.5 is centered, etc.    */    public float getLayoutAlignmentX(Container target) {        return 0;    }    /** Returns the alignment along the y axis.  This specifies how    * the component would like to be aligned relative to other    * components.  The value should be a number between 0 and 1    * where 0 represents alignment along the origin, 1 is aligned    * the furthest away from the origin, 0.5 is centered, etc.    */    public float getLayoutAlignmentY(Container target) {        return 0;    }    /** Invalidates the layout, indicating that if the layout manager    * has cached information it should be discarded.    */    public void invalidateLayout(Container target) {    }    /** A mapping <Component, AbsoluteConstraints> */    protected java.util.Hashtable constraints = new java.util.Hashtable();}

⌨️ 快捷键说明

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