亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? flowlayout.java

?? gcc-you can use this code to learn something about gcc, and inquire further into linux,
?? JAVA
字號:
// FlowLayout.java - Grid-based layout engine/* Copyright (C) 1999, 2000, 2001, 2002  Free Software FoundationThis file is part of GNU Classpath.GNU Classpath is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU Classpath is distributed in the hope that it will be useful, butWITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNUGeneral Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU Classpath; see the file COPYING.  If not, write to theFree Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA02111-1307 USA.Linking this library statically or dynamically with other modules ismaking a combined work based on this library.  Thus, the terms andconditions of the GNU General Public License cover the wholecombination.As a special exception, the copyright holders of this library give youpermission to link this library with independent modules to produce anexecutable, regardless of the license terms of these independentmodules, and to copy and distribute the resulting executable underterms of your choice, provided that you also meet, for each linkedindependent module, the terms and conditions of the license of thatmodule.  An independent module is a module which is not derived fromor based on this library.  If you modify this library, you may extendthis exception to your version of the library, but you are notobligated to do so.  If you do not wish to do so, delete thisexception statement from your version. */package java.awt;import java.io.Serializable;/** This class implements a flow-based layout.  Components are laid * out in order from left to right.  When a component cannot be placed * without horizontal clipping, a new row is started.  This class * supports horizontal and vertical gaps.  These are used for spacing * between components. * * @author Tom Tromey <tromey@redhat.com> * @author Aaron M. Renn (arenn@urbanophile.com) */public class FlowLayout implements LayoutManager, Serializable{  /** Constant that specifies left alignment.  */  public static final int LEFT = 0;  /** Constant that specifies center alignment.  */  public static final int CENTER = 1;  /** Constant that specifies right alignment.  */  public static final int RIGHT = 2;  /** Constant that specifies alignment to leading edge of container's   * orientation.  */  public static final int LEADING = 3;  /** Constant that specifies alignment to trailing edge of container's   * orientation.  */  public static final int TRAILING = 4;  // Serialization constant  private static final long serialVersionUID = -7262534875583282631L;  /** Add a new component to the layout.  This particular implementation   * does nothing.   */  public void addLayoutComponent (String name, Component comp)  {    // Nothing.  }  /**   * Returns the current justification value for this object.   *   * @return The current justification value for this object.   */  public int getAlignment ()  {    return align;  }  /**   * Returns the horizontal gap between components.   *   * @return The horizontal gap between components.   */  public int getHgap ()  {    return hgap;  }  /**   * Returns the vertical gap between lines of components.   *   * @return The vertical gap between lines of components.   */  public int getVgap ()  {    return vgap;  }  /**   * Initializes a new instance of <code>FlowLayout</code> with a center   * justification and a default horizontal and vertical gap of 5.   */  public FlowLayout ()  {    this (CENTER, 5, 5);  }  /**   * Initializes a new instance of <code>FlowLayout</code> with the specified   * justification and a default horizontal and vertical gap of 5.   *   * @param align The justification setting, which should be one of the   * contants in this class.   */  public FlowLayout (int align)  {    this (align, 5, 5);  }  /**   * Initializes a new instance of <code>FlowLayout</code> with the specified   * justification and gap values   * @param align Alignment   * @param hgap The horizontal gap   * @param vgap The vertical gap   * @exception IllegalArgumentException If either gap is negative   */  public FlowLayout (int align, int hgap, int vgap)  {    // Use methods to set fields so that we can have all the checking    // in one place.    setVgap (vgap);    setHgap (hgap);    setAlignment (align);  }  /** Lay out the container's components based on current settings.   * @param parent The parent container   */  public void layoutContainer (Container parent)  {    synchronized (parent.getTreeLock ())      {	int num = parent.getComponentCount ();	// This is more efficient than calling getComponents().	Component[] comps = parent.component;	Dimension d = parent.getSize ();	Insets ins = parent.getInsets ();	ComponentOrientation orient = parent.getComponentOrientation ();	boolean left_to_right = orient.isLeftToRight ();	int y = ins.top + vgap;	int i = 0;	while (i < num)	  {	    // Find the components which go in the current row.	    int new_w = ins.left + hgap + ins.right;	    int new_h = 0;	    int j;	    boolean found_one = false;	    for (j = i; j < num && ! found_one; ++j)	      {		// Skip invisible items.		if (! comps[i].visible)		  continue;		Dimension c = comps[i].getPreferredSize ();		int next_w = new_w + hgap + c.width;		if (next_w <= d.width || ! found_one)		  {		    new_w = next_w;		    new_h = Math.max (new_h, c.height);		    found_one = true;		  }		else		  {		    // Must start a new row, and we already found an item		    break;		  }	      }	    // Set the location of each component for this row.	    int x;	    int myalign = align;	    if (align == LEADING)	      myalign = left_to_right ? LEFT : RIGHT;	    else if (align == TRAILING)	      myalign = left_to_right ? RIGHT : LEFT;	    if (myalign == LEFT)	      x = ins.left + hgap;	    else if (myalign == CENTER)	      x = (d.width - new_w) / 2;	    else	      x = d.width - new_w;	    for (int k = i; k < j; ++k)	      {		if (comps[k].visible)		  {		    Dimension c = comps[k].getPreferredSize ();		    comps[k].setBounds (x, y, c.width, new_h);		    x += c.width + hgap;		  }	      }	    // Advance to next row.	    i = j;	    y += new_h + vgap;	  }      }  }  /**   * Returns the minimum layout size for the specified container using   * this layout.   * @param cont The parent container   * @return The minimum layout size.   */  public Dimension minimumLayoutSize (Container cont)  {    return getSize (cont, true);  }  /**   * Returns the preferred layout size for the specified container using   * this layout.   * @param cont The parent container   * @return The preferred layout size.   */  public Dimension preferredLayoutSize (Container cont)  {    return getSize (cont, false);  }  /** Remove the indicated component from this layout manager.   * This particular implementation does nothing.   * @param comp The component to remove   */  public void removeLayoutComponent (Component comp)  {    // Nothing.  }  /**   * Sets the justification value for this object to the specified value.   *   * @param align The new justification value for this object, which must   * be one of the constants in this class.   */  public void setAlignment (int align)  {    if (align != LEFT && align != RIGHT && align != CENTER	&& align != LEADING && align != TRAILING)      throw new IllegalArgumentException ("invalid alignment: " + align);    this.align = align;  }  /**   * Sets the horizontal gap between components to the specified value.   *   * @param hgap The new horizontal gap between components.   */  public void setHgap (int hgap)  {    if (hgap < 0)      throw new IllegalArgumentException ("horizontal gap must be nonnegative");    this.hgap = hgap;  }  /**   * Sets the vertical gap between lines of components to the specified value.   *   * @param vgap The new vertical gap.   */  public void setVgap (int vgap)  {    if (vgap < 0)      throw new IllegalArgumentException ("vertical gap must be nonnegative");    this.vgap = vgap;  }  /** Return String description of this object.   * @return A string representation of this object.   */  public String toString ()  {    return ("[" + getClass ().getName () + ",hgap=" + hgap + ",vgap=" + vgap	    + ",align=" + align + "]");  }  // This method is used to compute the various sizes.  private Dimension getSize (Container parent, boolean is_min)  {    synchronized (parent.getTreeLock ())      {	int w, h, num = parent.getComponentCount ();	// This is more efficient than calling getComponents().	Component[] comps = parent.component;	w = 0;	h = 0;	for (int i = 0; i < num; ++i)	  {	    if (! comps[i].visible)	      continue;	    // FIXME: can we just directly read the fields in Component?	    // Or will that not work with subclassing?	    Dimension d;	    if (is_min)	      d = comps[i].getMinimumSize ();	    else	      d = comps[i].getPreferredSize ();	    w += d.width;	    h = Math.max (d.height, h);	  }	Insets ins = parent.getInsets ();	w += (num + 1) * hgap + ins.left + ins.right;	h += 2 * vgap + ins.top + ins.bottom;	return new Dimension (w, h);      }  }  /**   * @serial The justification alignment of the lines of components, which   * will be one of the constants defined in this class.   */  private int align;  /**   * @serial The horizontal gap between components.   */  private int hgap;  /**   * @serial The vertical gap between lines of components.   */  private int vgap;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本久久精品一区二区| 亚洲午夜激情av| 日本一区二区三区四区在线视频 | 美女视频网站久久| 狠狠色丁香久久婷婷综| www.99精品| 欧美女孩性生活视频| 久久综合色天天久久综合图片| 亚洲欧美一区二区在线观看| 午夜影院久久久| 国产一区在线观看视频| 色欧美日韩亚洲| 日韩欧美高清dvd碟片| 国产精品久久毛片av大全日韩| 亚洲电影你懂得| 国产精品一二一区| 欧美色综合网站| 久久精品日韩一区二区三区| 亚洲精品一二三| 九色porny丨国产精品| 色综合天天综合网国产成人综合天| 欧美日韩成人综合| 国产欧美日韩视频在线观看| 午夜精品一区二区三区电影天堂| 国产精品综合久久| 欧美日本一道本| 成人免费小视频| 黄页视频在线91| 欧美日韩另类一区| 国产精品国产精品国产专区不蜜 | 欧美日韩免费一区二区三区视频| 久久婷婷国产综合国色天香| 亚洲精品成人悠悠色影视| 精品制服美女丁香| 欧美日韩aaa| 中文字幕的久久| 免费在线视频一区| 欧洲人成人精品| 中文字幕第一页久久| 久久国产婷婷国产香蕉| 欧美性欧美巨大黑白大战| 国产精品美女视频| 国产制服丝袜一区| 欧美一区二区三区在| 免费一级片91| 91久久一区二区| 中文字幕成人av| 久久精品国内一区二区三区| 欧美在线色视频| 亚洲三级在线看| 成人午夜视频在线观看| 日韩精品一区二区在线| 丝袜美腿亚洲色图| 欧美性大战久久| 亚洲毛片av在线| a美女胸又www黄视频久久| 久久精品亚洲精品国产欧美kt∨| 日韩vs国产vs欧美| 欧美日韩亚洲丝袜制服| 一卡二卡欧美日韩| 色系网站成人免费| 国产精品福利电影一区二区三区四区 | 成人成人成人在线视频| 日韩精品一区在线观看| 日韩电影一区二区三区| 欧美在线影院一区二区| 亚洲男女一区二区三区| a美女胸又www黄视频久久| 国产蜜臀97一区二区三区| 国产精品一区二区在线播放 | 国产一区二区导航在线播放| 日韩美女天天操| 美国三级日本三级久久99| 51精品视频一区二区三区| 天堂久久一区二区三区| 7777精品伊人久久久大香线蕉的 | 欧美在线视频你懂得| 亚洲狠狠丁香婷婷综合久久久| 99免费精品在线观看| 椎名由奈av一区二区三区| 94-欧美-setu| 亚洲精品少妇30p| 在线免费亚洲电影| 亚洲成人手机在线| 91精品国产一区二区三区| 日本不卡不码高清免费观看| 日韩精品一区二区三区中文精品| 美脚の诱脚舐め脚责91| 精品国产精品一区二区夜夜嗨| 精品在线一区二区| 欧美激情一区在线| jlzzjlzz欧美大全| 亚洲精品视频免费观看| 欧美日韩和欧美的一区二区| 日韩电影一区二区三区| 欧美精品一区二区在线播放| 国产v日产∨综合v精品视频| 国产精品初高中害羞小美女文| 99re热这里只有精品免费视频 | 欧美人牲a欧美精品| 青草av.久久免费一区| 久久久久久久综合狠狠综合| 成人av免费在线| 亚洲午夜日本在线观看| 欧美一卡二卡三卡四卡| 国产精品一区二区x88av| 国产精品美女久久久久久久| 91麻豆国产香蕉久久精品| 亚洲成人www| 久久婷婷国产综合精品青草| 色香蕉成人二区免费| 日韩av中文在线观看| 久久精品夜夜夜夜久久| 色综合咪咪久久| 亚洲6080在线| 久久久久久久综合狠狠综合| 在线亚洲一区观看| 久久精品99国产精品| 综合电影一区二区三区 | 美女脱光内衣内裤视频久久影院| 国产欧美一二三区| 欧美色网站导航| 国产资源精品在线观看| 亚洲男人天堂av| 91麻豆精品国产91久久久使用方法| 极品少妇一区二区三区精品视频| 最新不卡av在线| 欧美一区二区三区视频| 成人国产精品免费观看视频| 午夜欧美2019年伦理| 亚洲国产成人一区二区三区| 欧美精品久久久久久久久老牛影院| 国产精品99久久久久久有的能看 | 欧美一区二区三区在线看| 成人久久久精品乱码一区二区三区| 亚洲成人黄色小说| 欧美激情在线看| 日韩欧美国产三级| 日本高清无吗v一区| 国产精品中文字幕一区二区三区| 风间由美一区二区av101| 午夜伊人狠狠久久| 国产精品福利电影一区二区三区四区| 制服丝袜中文字幕一区| 91网站最新地址| 久久99精品一区二区三区三区| 一区二区三区不卡视频| 欧美韩国日本不卡| 日韩欧美的一区二区| 欧美色图12p| 99天天综合性| 国产.欧美.日韩| 久久精品久久99精品久久| 亚洲欧美视频在线观看| 久久久久久免费网| 精品国产伦一区二区三区观看方式| 在线一区二区三区四区五区| av在线不卡网| 国产白丝精品91爽爽久久 | ww久久中文字幕| 欧美日本一区二区三区| 色乱码一区二区三区88| 福利一区在线观看| 国产风韵犹存在线视精品| 久久精品国产澳门| 青青国产91久久久久久 | 欧美一区二区啪啪| 欧洲一区二区三区在线| 97se亚洲国产综合自在线观| 成人黄色片在线观看| 成人性生交大片免费看视频在线| 久久99九九99精品| 久久成人18免费观看| 麻豆国产精品官网| 日韩av不卡在线观看| 亚洲国产成人高清精品| 亚洲最大的成人av| 亚洲激情网站免费观看| 亚洲欧洲美洲综合色网| 国产日韩精品一区二区浪潮av| 精品国产一区二区亚洲人成毛片| 日韩一区二区高清| 日韩美一区二区三区| 日韩欧美第一区| 精品少妇一区二区三区 | www.欧美精品一二区| youjizz国产精品| 99久久er热在这里只有精品66| 国产成人在线视频网站| 国产成a人亚洲| 99国产精品久久久久| 一本一本大道香蕉久在线精品| 97se亚洲国产综合自在线不卡| 色综合网站在线| 91极品美女在线| 欧美美女视频在线观看| 欧美美女bb生活片| 欧美xfplay| 国产精品网站在线观看| 亚洲天天做日日做天天谢日日欢|