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

📄 borderlayout.java

📁 this gcc-g++-3.3.1.tar.gz is a source file of gcc, you can learn more about gcc through this codes f
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
  else if (str.equals(SOUTH))    south = component;  else if (str.equals(EAST))    east = component;  else if (str.equals(WEST))    west = component;  else if (str.equals(BEFORE_FIRST_LINE))    firstLine = component;  else if (str.equals(AFTER_LAST_LINE))    lastLine = component;  else if (str.equals(BEFORE_LINE_BEGINS))    firstItem = component;  else if (str.equals(AFTER_LINE_ENDS))    lastItem = component;  else    throw new IllegalArgumentException("Constraint value not valid: " + str);}/*************************************************************************//**  * Adds a component to the layout in the specified constraint position,   * which must be one of the string constants defined in this class.  *  * @param constraints The constraint string.  * @param component The component to add.  *  * @exception IllegalArgumentException If the constraint object is not  * one of the specified constants in this class.  *  * @deprecated This method is deprecated in favor of  * <code>addLayoutComponent(Component, Object)</code>.  */public voidaddLayoutComponent(String constraints, Component component){  addLayoutComponent(component, constraints);}/*************************************************************************//**  * Removes the specified component from the layout.  *  * @param component The component to remove from the layout.  */public voidremoveLayoutComponent(Component component){  if (north == component)    north = null;  if (south == component)    south = null;  if (east == component)    east = null;  if (west == component)    west = null;  if (center == component)    center = null;  if (firstItem == component)    firstItem = null;  if (lastItem == component)    lastItem = null;  if (firstLine == component)    firstLine = null;  if (lastLine == component)    lastLine = null;}/*************************************************************************//**  * Returns the minimum size of the specified container using this layout.  *  * @param target The container to calculate the minimum size for.  *  * @return The minimum size of the container  */public Dimension minimumLayoutSize(Container target){  return calcSize(target, MIN);}/*************************************************************************//**  * Returns the preferred size of the specified container using this layout.  *  * @param target The container to calculate the preferred size for.  *  * @return The preferred size of the container  */public Dimension preferredLayoutSize(Container target){  return calcSize(target, PREF);}/*************************************************************************//**  * Returns the maximum size of the specified container using this layout.  *  * @param target The container to calculate the maximum size for.  *  * @return The maximum size of the container  */public Dimension maximumLayoutSize(Container target){  return calcSize(target, MAX);}/*************************************************************************//**  * Returns the X axis alignment, which is a <code>float</code> indicating  * where along the X axis this container wishs to position its layout.  * 0 indicates align to the left, 1 indicates align to the right, and 0.5  * indicates align to the center.  *  * @param parent The parent container.  *  * @return The X alignment value.  */public floatgetLayoutAlignmentX(Container parent){  return(parent.getAlignmentX());}/*************************************************************************//**  * Returns the Y axis alignment, which is a <code>float</code> indicating  * where along the Y axis this container wishs to position its layout.  * 0 indicates align to the top, 1 indicates align to the bottom, and 0.5  * indicates align to the center.  *  * @param parent The parent container.  *  * @return The Y alignment value.  */public floatgetLayoutAlignmentY(Container parent){  return(parent.getAlignmentY());}/*************************************************************************//**  * Instructs this object to discard any layout information it might  * have cached.  *  * @param parent The parent container.  */public voidinvalidateLayout(Container parent){}/*************************************************************************//**  * Lays out the specified container according to the constraints  * in this object.  *  * @param target The container to lay out.  */public voidlayoutContainer(Container target){  synchronized (target.getTreeLock ())    {      Insets i = target.getInsets();      ComponentOrientation orient = target.getComponentOrientation ();      boolean left_to_right = orient.isLeftToRight ();      Component my_north = north;      Component my_east = east;      Component my_south = south;      Component my_west = west;      // Note that we currently don't handle vertical layouts.  Neither      // does JDK 1.3.      if (firstLine != null)	my_north = firstLine;      if (lastLine != null)	my_south = lastLine;      if (firstItem != null)	{	  if (left_to_right)	    my_west = firstItem;	  else	    my_east = firstItem;	}      if (lastItem != null)	{	  if (left_to_right)	    my_east = lastItem;	  else	    my_west = lastItem;	}      Dimension c = calcCompSize(center, PREF);      Dimension n = calcCompSize(my_north, PREF);      Dimension s = calcCompSize(my_south, PREF);      Dimension e = calcCompSize(my_east, PREF);      Dimension w = calcCompSize(my_west, PREF);      Dimension t = target.getSize();      /*	<-> hgap     <-> hgap	+----------------------------+          }	|t                           |          } i.top	|  +----------------------+  |  --- y1  }	|  |n                     |  |	|  +----------------------+  |          } vgap	|  +---+ +----------+ +---+  |  --- y2  }        }	|  |w  | |c         | |e  |  |                   } hh	|  +---+ +----------+ +---+  |          } vgap   }	|  +----------------------+  |  --- y3  }	|  |s                     |  |	|  +----------------------+  |          }	|                            |          } i.bottom	+----------------------------+          }	|x1   |x2          |x3	<---------------------->	<-->         ww           <-->	i.left                    i.right      */      int x1 = i.left;      int x2 = x1 + w.width + hgap;      int x3 = t.width - i.right - e.width;      int ww = t.width - i.right - i.left;      int y1 = i.top;      int y2 = y1 + n.height + vgap;      int y3 = t.height - i.bottom - s.height;      int hh = y3-y2-vgap;      setBounds(center, x2, y2, x3-x2-hgap, hh);      setBounds(my_north, x1, y1, ww, n.height);      setBounds(my_south, x1, y3, ww, s.height);      setBounds(my_west, x1, y2, w.width, hh);      setBounds(my_east, x3, y2, e.width, hh);    }}/*************************************************************************//**  * Returns a string representation of this layout manager.  *  * @return A string representation of this object.  */public StringtoString(){  return getClass().getName() + "[hgap=" + hgap + ",vgap=" + vgap + "]";}private voidsetBounds(Component comp, int x, int y, int w, int h){  if (comp == null)    return;  comp.setBounds(x, y, w, h);}// Some constants for use with calcSize().private static final int MIN = 0;private static final int MAX = 1;private static final int PREF = 2;private DimensioncalcCompSize(Component comp, int what){  if (comp == null)    return new Dimension(0, 0);  if (what == MIN)    return comp.getMinimumSize();  else if (what == MAX)    return comp.getMaximumSize();  return comp.getPreferredSize();}// This is a helper function used to compute the various sizes for// this layout.private DimensioncalcSize(Container target, int what){  synchronized (target.getTreeLock ())    {      Insets ins = target.getInsets();      ComponentOrientation orient = target.getComponentOrientation ();      boolean left_to_right = orient.isLeftToRight ();      Component my_north = north;      Component my_east = east;      Component my_south = south;      Component my_west = west;      // Note that we currently don't handle vertical layouts.  Neither      // does JDK 1.3.      if (firstLine != null)	my_north = firstLine;      if (lastLine != null)	my_south = lastLine;      if (firstItem != null)	{	  if (left_to_right)	    my_west = firstItem;	  else	    my_east = firstItem;	}      if (lastItem != null)	{	  if (left_to_right)	    my_east = lastItem;	  else	    my_west = lastItem;	}            Dimension ndim = calcCompSize(my_north, what);      Dimension sdim = calcCompSize(my_south, what);      Dimension edim = calcCompSize(my_east, what);      Dimension wdim = calcCompSize(my_west, what);      Dimension cdim = calcCompSize(center, what);      int width = edim.width + cdim.width + wdim.width + (hgap * 2);      if (ndim.width > width)	width = ndim.width;      if (sdim.width > width)	width = sdim.width;      width += (ins.left + ins.right);      int height = edim.height;      if (cdim.height > height)	height = cdim.height;      if (wdim.height > height)	height = wdim.height;      height += (ndim.height + sdim.height + (vgap * 2) + ins.top + ins.bottom);      return(new Dimension(width, height));    }}} // class BorderLayout 

⌨️ 快捷键说明

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