Microsoft Word - CH14

Size: px
Start display at page:

Download "Microsoft Word - CH14"

Transcription

1 Layout Manager 14-1 Layout Manager 之介紹 14-2 Overlay Layout 14-3 Box Layout 14-4 Spring Layout 14-5 Group Layout

2 本章將介紹如何以 Java Swing 之 Layout Manager 配置物件, 並介紹 Java SE 6.0 新 增之 Group Layout 14-1 Layout Manager 之介紹 在 Java AWT 中, 包括以下之 Layout Manager 類別 : java.awt.flowlayout java.awt.borderlayout java.awt.cardlayout java.awt.gridlayout java.awt.gridbaglayout 除了上述 Java AWT 之 Layout Manager 之外,Java Swing 提供以下之 Layout Manager 類別, 其中 SpringLayout 類別為 JDK 1.4 新增之 Layout Manager,GroupLayout 類別為 JDK 6.0 新增之 Layout Manager: javax.swing.boxlayout javax.swing.overlaylayout javax.swing.springlayout javax.swing.grouplayout 上述 Layout Manager 之類別皆實作 java.awt.layoutmanager 介面, 請參考 3-1 節之說明 此外, 亦實作 java.awt.layoutmanager2 介面, 增加配置物件之限制 (Constraint), 此限制代表 Layout Manager 配置物件的方式 有關如何在 Java Swing 中使用 FlowLayout BorderLayout CardLayout GridLayout 及 GridBagLayout 等 Layout Manager, 請分別參考 3-2 至 3-6 節之說明 需注意的是, 在 JDK 1.4( 含 ) 之前, 欲在 JFrame 與 JApplet 等容器配置物件, 需先以 getcontentpane() 方法取得其 Content Pane, 此方法回傳 java.awt.container 物件, 代表 JFrame 與 JApplet 等之 Content Pane, 接著以 setlayout() 方法針對此 Content Pane 設定其 Layout Manager, 而非 JFrame 與 JApplet, 例如 : 14-2

3 // JDK 1.4 的用法 // 取得其 Content Pane Container contentpane = getcontentpane(); // 定義 Layout Manager 為 FlowLayout contentpane.setlayout(new FlowLayout()); JButton jbutton = new JButton("OK"); // 將物件加至 Content Pane 中 contentpane.add(jbutton); 請參考範例 14-1 與 14-2 由於上述方法較為麻煩, 因此 Java 於 JDK 5.0( 含 ) 之後, 將上述方法修改如同 Java AWT 一般, 可直接針對 JFrame 與 JApplet 等容器以 setlayout() 方法設定其 Layout Manager, 因此除了可使用 Content Pane 之外, 亦可直接對容器設定其 Layout Manager, 例如 : // 直接定義 JFrame 之 Layout Manager 為 FlowLayout this.setlayout(new FlowLayout()); JButton jbutton = new JButton("OK"); // 直接將物件加至 JFrame 中 this.add(jbutton); 請參考範例 14-3 與 Flow Layout 14-3

4 Border Layout Card Layout Grid Layout Grid Bag Layout 14-4

5 除了 Java AWT 的 Layout Manager 之外, 本章將依序介紹以下 Java Swing 之 Layout Manager: javax.swing.overlaylayout javax.swing.boxlayout javax.swing.springlayout javax.swing.grouplayout 14-2 Overlay Layout Overlay Layout 其類別為 javax.swing.overlaylayout, 如同其名稱 Overlay( 覆蓋 ) 一般, 以重疊方式配置物件, 並且以對齊點 (Alignment Point) 設定物件的對齊位置, 物件以 JComponent 抽象類別的 setalignmentx() 與 setalignmenty() 方法設定水平與垂直對齊方式 : public void setalignmentx(float alignmentx) 設定物件水平方向的對齊方式, 其中參數 alignmentx 為水平對齊係數, 由 0.0f 至 1.0f,0.0f 代表向左對齊 0.5f 代表向中央對齊 1.0f 代表向右對齊, 如同以下之常數值 : Component.LEFT_ALIGNMENT: 向左對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.RIGHT_ALIGNMENT: 向右對齊 public void setalignmenty(float alignmenty) 設定物件垂直方向的對齊方式, 其中參數 alignmenty 為垂直對齊係數, 由 0.0f 至 1.0f,0.0f 代表向上對齊 0.5f 代表向中央對齊 1.0f 代表向下對齊, 如同以下之常數值 : Component.TOP_ALIGNMENT: 向上對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.BOTTOM_ALIGNMENT: 向下對齊 14-5

6 其中對齊係數為 0.0f 至 1.0f 間之值, 例如設定水平的對齊係數為 0.5f 時, 代表物件位於容器的水平中央 除了設定水平與垂直的對齊方式之外, 使用 Overlay Layout 時, 另需定義物件之最小 最佳及最大尺寸, 以作為容器大小調整時, 物件調整之依據 OverlayLayout 類別的建構函式如下, 其中參數 target 用以指定配置 Overlay Layout 之容器 : public OverlayLayout(Container target) OverlayLayout 類別的方法有 : public void addlayoutcomponent(component comp, Object constraints) 加入物件至 Layout Manager 中, 其中參數 comp 為 Component 型別, 代表加入 之物件, 參數 constraints 為配置物件之限制 public void addlayoutcomponent(string name, Component comp) 加入物件至 Layout Manager 中, 其中參數 comp 為 Component 型別, 因此加入物件代表加入繼承 Component 抽象類別之物件, 可為 Java AWT 或 Java Swing 類別 public float getlayoutalignmentx(container target) 取得置放物件之容器其水平方向的對齊方式, 並回傳 0.0f 到 1.0f 之值,0.0f 代表向左對齊 0.5f 代表向中央對齊 1.0f 代表向右對齊 public float getlayoutalignmenty(container target) 取得置放物件之容器其垂直方向的對齊方式, 並回傳 0.0f 到 1.0f 之值,0.0f 代表向上對齊 0.5f 代表向中央對齊 1.0f 代表向下對齊 public final Container gettarget() (JDK 6.0) 取得配置之容器 14-6

7 public void invalidatelayout(container target) 使置放物件之容器無效 public void layoutcontainer(container target) 配置指定之容器 public Dimension maximumlayoutsize(container target) 取得置放物件容器之最大尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最大高度與寬度 public Dimension minimumlayoutsize(container target) 取得置放物件容器之最小尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最小高度與寬度 public Dimension preferredlayoutsize(container target) 取得置放物件容器之最佳尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最佳高度與寬度 public void removelayoutcomponent(component comp) 自 Layout Manager 移除物件 請參考範例

8 14-3 Box Layout Box Layout 為 Java Swing 之 Layout Manager, 其類別為 javax.swing.boxlayout, 類似於 Java AWT 的 Flow Layout Flow Layout 允許物件預設由左至右依序配置於容器中, 當物件在容器中超過一列之配置時, 會依序由上而下自下一列繼續配置物件 而 Box Layout 則是可選擇由左至右或由上而下配置物件 此外, 與 Flow Layout 最大的不同是, 當 Box Layout 由左至右配置物件時, 會嘗試調整物件的寬度為其最佳寬度 (Preferred Width), 當容器的寬度不足時,Box Layout 會自動調整物件的寬度以儘量符合容器的寬度限制, 另外 Box Layout 以其中高度最大的物件之最佳高度 (Preferred Height) 為基準, 調整各物件的高度使其一致, 但若物件設定其最大高度超過容器之高度限制時, 則會依 JComponent 抽象類別的 setalignmenty() 方法調整容器中各物件垂直方向的對齊方式, 其宣告方式為 : public void setalignmenty(float alignmenty) 設定物件垂直方向的對齊方式, 其中參數 alignmenty 為垂直對齊係數, 由 0.0f 至 1.0f,0.0f 代表向上對齊 0.5f 代表向中央對齊 1.0f 代表向下對齊, 如同以下之常數值 : Component.TOP_ALIGNMENT: 向上對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.BOTTOM_ALIGNMENT: 向下對齊 如下圖所示, 各物件依中央對齊 : 同樣當 Box Layout 由上而下配置物件時, 會嘗試調整物件的高度為其最佳高度 (Preferred Height), 當容器的高度不足時,Box Layout 會自動調整物件的高度以 儘量符合容器的高度限制, 另外 Box Layout 以其中寬度最大的物件之最佳寬度 14-8

9 (Preferred Width) 為基準, 調整各物件的寬度使其一致, 但若物件設定其最大寬 度超過容器之寬度限制時, 則會依 JComponent 抽象類別的 setalignmentx() 方法調 整容器中各物件水平方向的對齊方式, 其宣告方式為 : public void setalignmentx(float alignmentx) 設定物件水平方向的對齊方式, 其中參數 alignmentx 為水平對齊係數, 由 0.0f 至 1.0f,0.0f 代表向左對齊 0.5f 代表向中央對齊 1.0f 代表向右對齊, 如同以下之常數值 : Component.LEFT_ALIGNMENT: 向左對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.RIGHT_ALIGNMENT: 向右對齊 如下圖所示, 各物件依中央對齊 : BoxLayout 類別之建構函式為 : public BoxLayout(Container target, int axis) 其中參數 : 1. target: 指定配置 Box Layout 之容器 2. axis: 設定容器配置物件的方式, 為以下之常數值 : BoxLayout.X_AXIS: 由左至右配置 BoxLayout.Y_AXIS: 由上至下配置 BoxLayout.LINE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定一行之配置方向, 通常為水平方向的配置方式 14-9

10 BoxLayout.PAGE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定整頁之配置方向, 通常為垂直方向的配置方式 其中 java.awt.componentorientation 之配置方向, 可為以下之常數值 : ComponentOrientation.LEFT_TO_RIGHT: 物件由左至右配置 ComponentOrientation.RIGHT_TO_LEFT: 物件由右至左配置 BoxLayout 類別的方法有 : public final int getaxis() (JDK 6.0) 取得容器配置物件的方式, 為以下之常數值 : BoxLayout.X_AXIS: 由左至右配置 BoxLayout.Y_AXIS: 由上至下配置 BoxLayout.LINE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定一行之配置方向 BoxLayout.PAGE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定一頁之配置方向 public float getlayoutalignmentx(container target) 取得置放物件之容器其水平方向的對齊方式, 並回傳 0.0f 到 1.0f 之值,0.0f 代表向左對齊 0.5f 代表向中央對齊 1.0f 代表向右對齊, 如同以下之常數值 : Component.LEFT_ALIGNMENT: 向左對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.RIGHT_ALIGNMENT: 向右對齊 public float getlayoutalignmenty(container target) 取得置放物件之容器其垂直方向的對齊方式, 並回傳 0.0f 到 1.0f 之值,0.0f 代表向上對齊 0.5f 代表向中央對齊 1.0f 代表向下對齊, 如同以下之常數值 : Component.TOP_ALIGNMENT: 向上對齊 Component.CENTER_ALIGNMENT: 向中央對齊 Component.BOTTOM_ALIGNMENT: 向下對齊 14-10

11 public final Container gettarget() (JDK 6.0) 取得配置之容器 public void invalidatelayout(container target) 使置放物件之容器無效 public void layoutcontainer(container target) 配置指定之容器 public Dimension maximumlayoutsize(container target) 取得置放物件容器之最大尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最大高度與寬度 public Dimension minimumlayoutsize(container target) 取得置放物件容器之最小尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最小高度與寬度 public Dimension preferredlayoutsize(container target) 取得置放物件容器之最佳尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最佳高度與寬度 public void removelayoutcomponent(component comp) 自 Layout Manager 移除物件 請參考範例 範例 介紹如何以 Box Layout 配置物件, 其中可藉由以下之設定, 定義 Box Layout 的配置方向 : 14-11

12 BoxLayout.X_AXIS: 由左至右配置 BoxLayout.Y_AXIS: 由上至下配置 BoxLayout.LINE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定一行之配置方向 BoxLayout.PAGE_AXIS: 依據容器所設定之 ComponentOrientation 配置方向, 設定一頁之配置方向 除了 BoxLayout 類別之外, 另可配合 javax.swing.box 類別使用 ( 註 ), 以定義容器 中各物件間之間隔距離,Box 類別分別提供 Glue Rigid Area Strut 及自訂 Filler 四種方式定義間隔距離, 茲分別說明如下 : ( 註 ):javax.swing.box 類別除了可配合 javax.swing.boxlayout 類別使用之外, 亦可與其他 Java Swing 之 Layout Manager 類別一起使用, 以定義物件間之間隔距離 Glue Glue 用以定義容器中各物件間的額外空間 (Excess Space), 以下圖為例, 若兩物件間未設定任何間隔時, 則物件間並無任何間隔, 而其額外空間則為此兩物件的最右方空間, 其寬度為容器之寬度扣除容器中所有物件之總寬度 : 14-12

13 若兩物件間設定 Glue 時, 會以此額外空間作為物件間之間隔, 如下圖所示 : 由此可知, 此額外空間之大小取決於容器之大小與容器中各物件之大小, 因此為變動大小 此外, 若容器中各物件之大小均相同, 則建議以 Glue 設定其額外空間為物件間之間隔 欲以 Glue 設定其額外空間, 可使用以下 Box 類別之方法定義 : public static Component createglue() 建立 Box 之 Glue 區域, 並回傳 Component 型別, 代表其額外空間 public static Component createhorizontalglue() 建立 Box 水平方向之 Glue 區域, 並回傳 Component 型別, 代表其額外空間 public static Component createverticalglue() 建立 Box 垂直方向之 Glue 區域, 並回傳 Component 型別, 代表其額外空間 請參考範例 由於容器 (JPanel) 設定其最佳尺寸, 其中寬度為 200, 超過容器內所有物件 (JButton) 寬度的總和, 因此物件間將產生一額外空間以作為物件間之間隔 14-13

14 Rigid Area 上述 Glue 是在物件間產生一 變動 大小的額外空間, 此區域的大小取決於容器與所置物件的大小 而 Rigid Area 則是在物件間建立一 固定 大小的區域以作為其間隔, 如下圖所示, 由此可知剩餘的空間將位於所有物件的最右方 : 欲以 Rigid Area 設定物件間之間隔, 可使用以下 Box 類別之方法定義 : public static Component createrigidarea(dimension d) 建立 Box 之固定大小 (Rigid Area) 區域, 其中參數 d 為 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表區域之高度與寬度, 並回傳 java.awt.component 型別, 代表此固定大小區域 請參考範例 讀者可試著改變視窗的寬度與高度, 可發現物件間之間隔為固定大小之區域, 不會因視窗大小改變而改變 Strut Glue 及 Rigid Area 方法均用以建立物件間之間隔區域, 而 Strut 則用以定義水平或垂直方向的 固定 大小區域 14-14

15 當建立水平方向的 Strut 時, 則產生一固定寬度的空間區域, 由於水平 Strut 有其固 定寬度, 因此可用以限制容器之最小寬度, 如下圖所示 : 反之, 當建立垂直方向的 Strut 時, 則產生一固定高度的空間區域, 由於垂直 Strut 有其固定高度, 因此可用以限制容器之最小高度, 如下圖所示 : 因此 Strut 常運用於限制容器的最小寬度或高度 建立 Strut, 可使用以下 Box 類別之方法定義 : public static Component createhorizontalstrut(int width) 建立 Box 水平方向固定寬度之區域, 其中參數 width 代表區域之寬度, 並回傳 Component 型別, 代表此區域 public static Component createverticalstrut(int height) 建立 Box 垂直方向固定高度之區域, 其中參數 height 代表區域之高度, 並回傳 Component 型別, 代表此區域 請參考範例 及 14-18, 分別示範如何以 Strut 限制容器的最小寬度與高度 14-15

16 讀者可試著改變視窗的寬度與高度, 但由於 Strut 會產生一固定寬度或高度的空間區域, 因此將限制容器的最小寬度或高度 自訂 Filler 最後一種也是最彈性的方法, 則是自訂區域的最小 (Minimum) 最佳 ( Preferred) 及最大 (Maximum) 尺寸 當容器大小改變時, 此自訂大小之區域會隨著自訂區域的最小 最佳及最大尺寸而改變, 如下圖所示 : 欲建立自訂大小之 Filler 區域, 需使用 javax.swing.box.filler 類別, 其建構函式 為 : public Box.Filler(Dimension min, Dimension pref, Dimension max) 其中參數 : 1. min: 設定區域之最小尺寸 2. pref: 設定區域之最佳尺寸 3. max: 設定區域之最大尺寸 14-16

17 Box.Filler 類別的方法有 : public void changeshape(dimension min, Dimension pref, Dimension max) 改變自訂 Filler 區域的大小, 其中參數 min 代表區域之最小尺寸,pref 代表區域之最佳尺寸,max 代表區域之最大尺寸 請參考範例 Spring Layout Spring Layout 為 JDK 1.4 新增之 Layout Manager, 其類別為 javax.swing.springlayout Spring Layout 與 Grid Bag Layout 同屬較彈性的 Layout Manager, 需配合其限制 (Constraints) 定義各物件的配置方式, 因此可想而知其程式亦較為複雜 與 Grid Bag Layout 之不同在於,Grid Bag Layout 將容器劃分成數個區域 (Cell), 並透過各物件的水平與垂直加權 (Weight), 以決定物件所佔據的區域數目 而 Spring Layout 則是以定義物件間其水平或垂直邊緣 (Edge) 間之距離, 以此距離及物件的長寬定義各物件的位置 以 Spring Layout 配置物件, 需使用以下三個類別 : 1. javax.swing.spring: 定義物件邊緣間的距離, 可分為最小 最佳 最大或實際距離 14-17

18 2. javax.swing.springlayout: 定義 Layout Manager 為 Spring Layout 3. javax.swing.springlayout.constraints: 定義 Spring 邊緣間距的限制, 此限制包括 Spring 類別的水平 垂直 寬度及高度等 各物件間之距離是依據其邊緣及距離定義, 茲分別說明如下 Spring 類別 javax.swing.spring 類別用以定義物件邊緣間的距離, 可分為最小 最佳 最大或 實際距離, 其建構函式為 : protected Spring() 其方法有 : public static Spring constant(int pref) 設定 Spring 物件, 此物件代表邊緣間的距離, 其中參數 pref 代表物件邊緣間 之最佳距離 public static Spring constant(int min, int pref, int max) 設定 Spring 物件, 其中參數 min pref max 分別代表物件邊緣間之最小 最 佳 最大距離 public abstract int getmaximumvalue() 取得 Spring 物件的最大值 public abstract int getminimumvalue() 取得 Spring 物件的最小值 public abstract int getpreferredvalue() 取得 Spring 物件的最佳值 14-18

19 public abstract int getvalue() 取得 Spring 物件之目前值 public abstract void setvalue(int value) 設定 Spring 物件之目前值 public static Spring max(spring s1, Spring s2) 取得兩 Spring 物件的最大值, 並回傳 Spring 型別的物件 public static Spring minus(spring s) 以 Spring 物件的相反方向定義 Spring 物件, 並回傳 Spring 型別的物件 public static Spring sum(spring s1, Spring s2) 以兩 Spring 物件的相加定義 Spring 物件, 並回傳 Spring 型別的物件 SpringLayout 類別 javax.swing.springlayout 類別用以定義容器之 Layout Manager 為 Spring Layout, 並以下列之值定義物件的邊緣, 藉由物件之邊緣間及距離定義各物件間之距離 : SpringLayout.BASELINE: 物件的基準線 SpringLayout.EAST: 物件的右側邊緣 SpringLayout.HEIGHT: 物件的高度 SpringLayout.HORIZONTAL_CENTER: 物件的水平中央 SpringLayout.NORTH: 物件的上方邊緣 SpringLayout.SOUTH: 物件的下方邊緣 SpringLayout.VERTICAL_CENTER: 物件的垂直中央 SpringLayout.WEST: 物件的左側邊緣 SpringLayout.WIDTH: 物件的寬度 14-19

20 請參考下圖之說明 : 以下之運算範例說明物件邊緣之間的關係 : // 物件右側邊緣 (EAST) = 物件左側邊緣 (WEST) + 物件寬度 SpringLayout.EAST = SpringLayout.WEST + SpringLayout.WIDTH; // 物件下方邊緣 (SOUTH) = 物件上方邊緣 (NORTH) + 物件高度 SpringLayout.SOUTH = SpringLayout.NORTH + SpringLayout.HEIGHT; // 物件水平中央 (HORIZONTAL_CENTER) = 物件左側邊緣 (WEST) + 物件寬度 /2 SpringLayout.HORIZONTAL_CENTER = SpringLayout.WEST + SpringLayout.WIDTH/2; // 物件垂直中央 (VERTICAL_CENTER) = 物件上方邊緣 (NORTH) + 物件高度 /2 SpringLayout.VERTICAL_CENTER = SpringLayout.NORTH + SpringLayout.HEIGHT/2; SpringLayout 類別之建構函式為 : public SpringLayout() 其方法有 : public void addlayoutcomponent(component component, Object constraints) 將物件以指定之邊緣間距限制加入至 Layout Manager 中, 其中參數 component 為 Component 型別, 代表加入之物件, 參數 constraints 為 SpringLayout.Constraints 之邊緣間距限制 14-20

21 public Spring getconstraint(string edgename, Component c) 取得物件所定義之邊緣間距限制, 並回傳 Spring 型別, 其中參數 edgename 為以下之常數值 : SpringLayout.BASELINE: 物件的基準線 SpringLayout.EAST: 物件的右側邊緣 SpringLayout.HEIGHT: 物件的高度 SpringLayout.HORIZONTAL_CENTER: 物件的水平中央 SpringLayout.NORTH: 物件的上方邊緣 SpringLayout.SOUTH: 物件的下方邊緣 SpringLayout.VERTICAL_CENTER: 物件的垂直中央 SpringLayout.WEST: 物件的左側邊緣 SpringLayout.WIDTH: 物件的寬度 public float getlayoutalignmentx(container p) 取得水平方向的對齊方式, 並回傳 0.5f, 代表向水平中央對齊 public float getlayoutalignmenty(container p) 取得垂直方向的對齊方式, 並回傳 0.5f, 代表向垂直中央對齊 public void invalidatelayout(container target) 使置放物件之容器無效 public void layoutcontainer(container target) 配置指定之容器 public Dimension maximumlayoutsize(container target) 取得置放物件容器之最大尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最大高度與寬度 14-21

22 public Dimension minimumlayoutsize(container target) 取得置放物件容器之最小尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最小高度與寬度 public Dimension preferredlayoutsize(container target) 取得置放物件容器之最佳尺寸, 其中參數 target 為 java.awt.container 型別, 並回傳 java.awt.dimension 型別, 其 Dimension.height 與 Dimension.width 分別代表此容器之最佳高度與寬度 public void removelayoutcomponent(component comp) 自 Layout Manager 移除物件 SpringLayout.Constraints 類別 javax.swing.springlayout.constraints 為 javax.swing.springlayout 類別的 Inner 類別, 用以定義 Spring 邊緣間距的限制, 此限制包括 Spring 類別的水平 垂直 寬度及高度等, 其建構函式為 : public SpringLayout.Constraints() public SpringLayout.Constraints(Component c) public SpringLayout.Constraints(Spring x, Spring y) public SpringLayout.Constraints(Spring x, Spring y, Spring width, Spring height) 其中參數 : 1. c:springlayout.constraints 物件 2. x:spring 的水平屬性值 3. y:spring 的垂直屬性值 14-22

23 4. width:spring 的寬度屬性值 5. height:spring 的高度屬性值 其方法有 : public Spring getconstraint(string edgename) 取得邊緣的限制屬性值 public void setconstraint(string edgename, Spring s) 設定邊緣的限制屬性值, 其中參數 edgename 為以下之常數值 : SpringLayout.BASELINE: 物件的基準線 SpringLayout.EAST: 物件的右側邊緣 SpringLayout.HEIGHT: 物件的高度 SpringLayout.HORIZONTAL_CENTER: 物件的水平中央 SpringLayout.NORTH: 物件的上方邊緣 SpringLayout.SOUTH: 物件的下方邊緣 SpringLayout.VERTICAL_CENTER: 物件的垂直中央 SpringLayout.WEST: 物件的左側邊緣 SpringLayout.WIDTH: 物件的寬度 public Spring getheight() 取得 Spring 的高度屬性值 (height) public void setheight(spring height) 設定 Spring 的高度屬性值 public Spring getwidth() 取得 Spring 的寬度屬性值 (width) public void setwidth(spring width) 設定 Spring 的寬度屬性值 14-23

24 public Spring getx() 取得 Spring 的水平屬性值 (x) public void setx(spring x) 設定 Spring 的水平屬性值 public Spring gety() 取得 Spring 的垂直屬性值 (y) public void sety(spring y) 設定 Spring 的垂直屬性值 除了上述類別之外, 一般的 Layout Manager 並不需要設定起始物件的位置, 但 Spring Layout 則需要設定, 依據此起始物件的位置可依序定義物件的相對位置 請參考範例 範例 介紹如何以 Spring Layout 定義物件間邊緣的距離 首先設定 Button 1 的起始水平與垂直位置各為 10 單位像素 (Pixel), 因此 Button 1 將定位於距離視窗原點 (10, 10) 的位置 : JButton jbutton1 = new JButton("Button 1"); // 設定 Spring 物件, 代表邊緣間的最佳距離 Spring x = Spring.constant(10); Spring y = Spring.constant(10); // 取得物件的限制 SpringLayout.Constraints spconstraints = layout.getconstraints(jbutton1); // 設定 Spring 的水平屬性值 spconstraints.setx(x); // 設定 Spring 的垂直屬性值 spconstraints.sety(y); 14-24

25 接著以 Spring 類別的 sum() 方法, 依序設定 Button 2 及 Button 3 的位置, 其中 Button 2 的水平座標是以 Button 1 的右側邊緣 (SpringLayout.EAST) 為基準加上 5 單位像素距離, 而其垂直座標則是以 Button 1 的下方邊緣 (SpringLayout.SOUTH) 為基準加上 5 單位像素距離 : JButton jbutton2 = new JButton(new ImageIcon("images/dukeswing.gif")); // 以兩 Spring 物件的相加定義 Spring 物件 x = Spring.sum(Spring.constant(5), spconstraints.getconstraint(springlayout.east)); y = Spring.sum(Spring.constant(5), spconstraints.getconstraint(springlayout.south)); // 取得物件的限制 spconstraints = layout.getconstraints(jbutton2); // 設定 Spring 的水平屬性值 spconstraints.setx(x); // 設定 Spring 的垂直屬性值 spconstraints.sety(y); Button 3 亦然 : JButton jbutton3 = new JButton("Button 3", new ImageIcon("images/dukeswing.gif")); // 以兩 Spring 物件的相加定義 Spring 物件 x = Spring.sum(Spring.constant(5), spconstraints.getconstraint(springlayout.east)); y = Spring.sum(Spring.constant(5), spconstraints.getconstraint(springlayout.south)); // 取得物件的限制 spconstraints = layout.getconstraints(jbutton3); // 設定 Spring 的水平屬性值 spconstraints.setx(x); // 設定 Spring 的垂直屬性值 spconstraints.sety(y); 14-25

26 請參考下圖之解說 : 由範例 可瞭解物件之間的距離是如何依據其邊緣而定義, 藉由範例 的 經驗, 可設計出如下圖之物件配置, 此類配置常運用於資料輸入對話盒, 請參範例 Group Layout Group Layout 是 Java SE 6.0 新增之 Layout Manager, 其類別為 javax.swing.grouplayout, 也是筆者認為功能最強大的 Layout Manager Group Layout 原為 Swing Labs Project 為 NetBeans 所開發之 GUI 配置工具, 並正式加入至 NetBeans 5.0 之中, 為配置物件之預設 Layout Manager, 稱為 Free Design, 14-26

27 由於功能強大, 因此 Sun 將此類別新增至 Java SE 6.0 之中, 作為配置物件之 Layout Manager NetBeans GUI 配置工具 在使用 Group Layout 配置物件時, 可使用 NetBeans 5.0 之 GUI 配置工具配置 Java AWT 或 Java Swing 物件,NetBeans 5.0 會自動產生程式碼, 待物件配置完畢之後, 則以此程式碼為依據開發視窗應用程式 雖然 NetBeans 5.0 會自動產生程式碼, 但 實際上此程式碼並不能直接由 Java SE 6.0 使用, 其主要原因是 NetBeans 5.0 所使 用的 GroupLayout 類別, 其套件 (Package) 為 org.jdesktop.layout, 而在 Java SE 6.0 中則是 javax.swing, 且最大的差異是加入物件的方法其名稱完全不同, 因此 NetBeans 5.0 所產生的程式碼並不能直接由 Java SE 6.0 使用, 需稍加修改方能引用 在 Sun 推出最新的 Java SE 6.0 之後,NetBeans 5.5 亦正式發表, 上述的問題已被修 正,NetBeans 5.5 搭配 Java SE 6.0, 其預設配置物件的 Layout Manager 設定為 javax.swing.grouplayout 類別, 因此筆者建議讀者使用 NetBeans 5.5 之後的版本 ( 註 ) ( 註 ): 至 2008 年 11 月止, 目前最新的版本為 NetBeans 6.5, 請參考 在介紹 Group Layout 之前, 不妨先瞭解 NetBeans 6.5 的 GUI 配置工具如何藉由 javax.swing.grouplayout 類別配置物件 在 NetBeans 6.5 中, 欲設定容器之 Layout Manager 為 Group Layout, 可使用滑鼠 右鍵點選容器, 在突顯式選單中選取 Set Layout Free Design, 容器之 Layout Manager 則設定為 Group Layout, 如下圖所示 ( 請參考範例 14-22): 14-27

28 待選取 Free Design 之後,NetBeans 會自動產生以下之程式碼, 除了設定容器之 Layout Manager 為 Group Layout 之外, 並自動設定其水平群組 (Horizontal Group) 與垂直群組 (Vertical Group): // 定義 Layout Manager 為 GroupLayout javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane()); // 以 getcontentpane() 方法取得其 Content Pane // 並設定 Content Pane 之 Layout Manager 為 GroupLayout getcontentpane().setlayout(layout); // 設定水平群組 layout.sethorizontalgroup( layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addgap(0, 300, Short.MAX_VALUE) ); // 設定垂直群組 layout.setverticalgroup( layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addgap(0, 100, Short.MAX_VALUE) ); 14-28

29 接著於容器中加入 Java Swing 之標籤, 當拖曳標籤時,NetBeans 會自動產生 相 對基準線 以建議物件的置放位置 : 待確定標籤位置之後,NetBeans 自動產生以下之程式碼, 其中在水平與垂直群組 中, 除加入標籤的程式之外, 並加入平行群組 (Parallel Group) 循序群組 (Sequential Group) 與間隔 (Gap): // 設定水平群組 layout.sethorizontalgroup( // 建立平行群組 layout.createparallelgroup( javax.swing.grouplayout.alignment.leading) // 建立循序群組.addGroup(layout.createSequentialGroup() // 加入容器間隔.addContainerGap() // 加入標籤.addComponent(jLabel1) // 加入容器間隔.addContainerGap(255, Short.MAX_VALUE)) ); // 設定垂直群組 layout.setverticalgroup( // 建立平行群組 layout.createparallelgroup( javax.swing.grouplayout.alignment.leading) // 建立循序群組.addGroup(layout.createSequentialGroup() // 加入容器間隔.addContainerGap() // 加入標籤.addComponent(jLabel1) // 加入容器間隔.addContainerGap(55, Short.MAX_VALUE)) ); 接著依序加入 Java Swing 之標籤與文字欄位, 當拖曳物件至其他物件附近時, NetBeans 會自動產生 相對基準線, 並以物件之基準線 (Baseline) 協助對齊物 件, 如下圖所示 : 14-29

30 其次, 若希望文字欄位能隨著容器水平方向之大小改變而變更其寬度, 可先點選文字欄位, 接著再點選工具列上之 Change horizontal resizability 按鈕, 則完成文字欄位變更大小之設定 : 此外, 欲設定所有的文字欄位寬度一致, 首先選取所有文字欄位, 再以滑鼠右鍵點選文字欄位, 在突顯式選單中選取 Same Size Same Width, 則所有被選取的文字欄位將為相同之寬度, 如下圖所示 : NetBeans 所產生之程式碼為 : layout.sethorizontalgroup( layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addgroup(layout.createsequentialgroup() 14-30

31 );.addcontainergap().addgroup(layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addcomponent(jlabel1).addcomponent(jlabel2)).addpreferredgap( javax.swing.layoutstyle.componentplacement.related).addgroup(layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addcomponent(jtextfield1, javax.swing.grouplayout.default_size, 215, Short.MAX_VALUE).addComponent(jTextField2, javax.swing.grouplayout.default_size, 215, Short.MAX_VALUE)).addContainerGap()) layout.setverticalgroup( layout.createparallelgroup( javax.swing.grouplayout.alignment.leading).addgroup(layout.createsequentialgroup().addcontainergap().addgroup(layout.createparallelgroup( javax.swing.grouplayout.alignment.baseline).addcomponent(jlabel1).addcomponent(jtextfield1, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)).addpreferredgap( javax.swing.layoutstyle.componentplacement.related).addgroup(layout.createparallelgroup( javax.swing.grouplayout.alignment.baseline).addcomponent(jlabel2).addcomponent(jtextfield2, javax.swing.grouplayout.preferred_size, javax.swing.grouplayout.default_size, javax.swing.grouplayout.preferred_size)).addcontainergap(javax.swing.grouplayout.default_size, Short.MAX_VALUE)) ); 當完成物件配置之後, 可使用滑鼠右鍵點選容器, 在突顯式選單中選取 Preview Design 並選取 Look and Feel 如 Metal, 以預覽容器與物件配置之結果 : 14-31

32 執行結果如下圖所示, 可試著改變容器水平方向之大小, 文字欄位之寬度亦會隨著 改變 : 由上述 NetBeans 之示範, 大致可以瞭解 Group Layout 如何配置物件 基本上,Group Layout 與其他的 Layout Manager 最大之不同在於, 後者均以單一限制 (Constraint) 定義各物件的配置位置, 如 Border Layout, 其限制雖分為東 南 西 北及中央五個區域, 但單一物件只會使用其中一個限制, 例如 : JButton jbutton = new JButton("OK"); add(jbutton, BorderLayout.CENTER); 但在 Group Layout 中, 則是同時以水平與垂直兩個方向獨立的群組定義各物件之配置, 在此兩群組中, 並以巢狀階層 (Nested Hierarchy) 的方式配置包括平行群組 循序群組 間隔與物件, 需注意的是, 物件必須同時存在於水平與垂直群組之中, 否則將產生 java.lang.illegalstateexception 之例外錯誤 14-32

33 以前述 NetBeans 示範為例, 其階層關係如下圖所示 : Group Layout 之介紹 Group Layout 如同其名稱 Group( 群組 ) 一般, 以群組方式配置物件, 其主要成員包括 : 1. 水平群組 (Horizontal Group): 為 Group Layout 最上層群組之一, 可由 GroupLayout 類別的 sethorizontalgroup() 方法設定, 用以定義水平方向物件之配置, 並藉此決定水平方向物件的寬度, 包括最小 最佳及最大寬度, 如下圖所示 : 2. 垂直群組 (Vertical Group): 為 Group Layout 最上層群組之一, 可由 GroupLayout 類別的 setverticalgroup() 方法設定, 用以定義垂直方向物件之配置, 並藉此決定垂直方向物件的高度, 包括最小 最佳及最大高度, 如下圖所示 : 14-33

34 3. 循序群組 (Sequential Group): 如同 Box Layout 一般, 沿著水平或垂直方向依序配置物件, 各物件之位置相對於其前一物件的位置, 可由 GroupLayout 類別的 createsequentialgroup() 方法建立, 其中物件可為平行群組 循序群組 間隔 Java AWT 或 Java Swing 物件等 循序群組的大小取決於群組中各物件大小之總和, 如下圖所示 : 4. 平行群組 (Parallel Group): 如同 Overlay Layout 一般, 定義水平或垂直方向物件之對齊方式, 可由 GroupLayout 類別的 createparallelgroup() 方法建立, 其中物件可為平行群組 循序群組 間隔 Java AWT 或 Java Swing 物件等 平行群組的大小取決於群組中最大物件之尺寸 若為水平方向, 可為向上 向下或沿著物件之基準線 (Baseline) 對齊, 如下圖所示 : 14-34

35 若為垂直方向, 可沿著物件之前沿 (Leading) 後沿 ( Trailing) 或置中對齊, 如下圖所示 : 5. 間隔 (Gap): 如同 Box 類別一般, 定義各物件間之間隔距離, 可分為 : Gap: 一般間隔, 可由循序群組或平行群組的 addgap() 方法建立 Container Gap : 為物件與容器間之間隔, 可由循序群組的 addcontainergap() 方法建立 Preferred Gap: 為物件間之最佳間隔, 可由循序群組的 addpreferredgap() 方法建立 Automatic Gap: 由 Group Layout 依據容器的大小自動調整物件間或物件與容器間之最佳距離, 可分別由 GroupLayout 類別的 setautocreategaps() 及 setautocreatecontainergaps() 方法建立 以 Group Layout 配置物件, 需使用以下三個類別 : 1. javax.swing.grouplayout: 為 Group Layout 之主要類別, 可藉由其方法建立水平 垂直 平行及循序群組 2. javax.swing.grouplayout.sequentialgroup : 為循序群組之類別, 由 javax.swing.grouplayout 類別的 createsequentialgroup() 方法建立 3. javax.swing.grouplayout.parallelgroup : 為平行群組之類別, 由 javax.swing.grouplayout 類別的 createparallelgroup() 方法建立 茲分別說明如下 14-35

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes (Swing) AWTEvent Font LayoutManager 1 Classes in the javax.swing package Heavyweight FontMetrics Object Color Panel Applet JApplet Graphics Component Container Window Frame JFrame * Dialog JDialog JComponent

More information

PowerPoint 簡報

PowerPoint 簡報 Paint 繪圖板 JAVA 程式設計 指導老師 : 鄞宗賢 組員 : 4A3G0901 劉彥佐 4A3G0907 韓偉志 畫面預覽 匯入參數 package paint; import java.awt.*; import java.awt.event.*; import javax.swing.*; 主程式 public class paint{ public static void main(string[]

More information

基于CDIO一体化理念的课程教学大纲设计

基于CDIO一体化理念的课程教学大纲设计 Java 语 言 程 序 设 计 课 程 教 学 大 纲 Java 语 言 程 序 设 计 课 程 教 学 大 纲 一 课 程 基 本 信 息 1. 课 程 代 码 :52001CC022 2. 课 程 名 称 :Java 语 言 程 序 设 计 3. 课 程 英 文 名 称 :Java Programming 4. 课 程 类 别 : 理 论 课 ( 含 实 验 上 机 或 实 践 ) 5. 授

More information

Swing-02.pdf

Swing-02.pdf 2 J B u t t o n J T e x t F i e l d J L i s t B u t t o n T e x t F i e l d L i s t J F r a m e 21 2 2 Swing C a n v a s C o m p o n e n t J B u t t o n AWT // ToolbarFrame1.java // java.awt.button //

More information

(京)新登字063号

(京)新登字063号 教 育 部 职 业 教 育 与 成 人 教 育 司 推 荐 教 材 Java 程 序 设 计 教 程 ( 第 二 版 ) 沈 大 林 主 编 沈 昕 肖 柠 朴 曾 昊 等 编 著 内 容 简 介 Java 是 由 美 国 SUN 公 司 开 发 的 一 种 功 能 强 大 的, 具 有 简 单 面 向 对 象 分 布 式 可 移 植 等 性 能 的 多 线 程 动 态 计 算 机 编 程 语 言

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes What is a JavaBean? JavaBean Java JavaBean Java JavaBean JComponent tooltiptext font background foreground doublebuffered border preferredsize minimumsize maximumsize JButton. Swing JButton JButton() JButton(String

More information

coverage2.ppt

coverage2.ppt Satellite Tool Kit STK/Coverage STK 82 0715 010-68745117 1 Coverage Definition Figure of Merit 2 STK Basic Grid Assets Interval Description 3 Grid Global Latitude Bounds Longitude Lines Custom Regions

More information

<img>

<img> 04 圖片 4-1 4-2 4-3 4-4 網頁程式設計 4-1 網頁多媒體 Flash Java Applets HTML 8 4-1-1 圖片 JPEG Joint Photographic Experts Group 非失真模式 (lossless) 基本模式 (baseline standard) 1 2 12 JPEG 6 JPEG.jpg.jpe.jpeg GIF (graphic

More information

优迈科技教学大纲2009版本

优迈科技教学大纲2009版本 java 软 件 工 程 师 培 训 教 学 大 纲 1 JAVA 软 件 工 程 师 培 训 教 学 大 纲 深 圳 软 件 园 人 才 实 训 基 地 2009 年 3 月 目 录 java 软 件 工 程 师 培 训 教 学 大 纲 2 教 学 阶 段...3 第 一 章 JAVA 起 步...3 第 二 章 面 向 对 象 的 编 程...4 第 三 章 数 据 结 构 IO 线 程 网 络...5

More information

ACI pdf

ACI pdf 09 9.1 -...9-2 9.1.1...9-2 9.1.2...9-3 9.2 -...9-4 9.2.1 PMT - ()...9-4 9.2.2...9-6 9.3 -...9-8 9.3.1 PMT - ()...9-8 9.4...9-10 9.4.1... 9-11 9.4.2...9-12 9.4.3...9-14 9.5 -...9-17 9.5.1...9-18 1 Excel...9-21

More information

輕鬆學 Dreamweaver CS5 網頁設計..\Example\Ch0\ \.html..\example\ch0\ \mouse.txt..\example\ch0\ \ _Ok.html 學習重點 JavaScript 複製程式碼 mouse.txt Ctrl+C Ctrl+C 0-4

輕鬆學 Dreamweaver CS5 網頁設計..\Example\Ch0\ \.html..\example\ch0\ \mouse.txt..\example\ch0\ \ _Ok.html 學習重點 JavaScript 複製程式碼 mouse.txt Ctrl+C Ctrl+C 0-4 JAVA Extension 0..\Example\Ch0\ \ T.html..\Example\Ch0\ \ T.txt T.txt..\Example\Ch0\ \ T_Ok.html 提示 :. Marquee Marquee Font Color #FFFFFF BG Color #867bf Width 90 Height 50. T.txt Ctrl+C your scrolling

More information

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6: Chapter 15. Suppressed Exception CH14 Finally Block Java SE 7 try-with-resources JVM cleanup try-with-resources JVM cleanup cleanup Java SE 7 Throwable getsuppressed Throwable[] getsuppressed() Suppressed

More information

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e Android Studio Debugging 本篇教學除了最基本的中斷點教學之外, 還有條件式中斷的教學 條件式中斷是進階的除錯技巧, 在某些特定情況中, 我們有一個函數可能會被呼叫數次, 但是我們只希望在某種條件成立時才進行中斷, 進而觀察變數的狀態 而條件式中斷這項技巧正是符合這項需求 本教學分兩部分 單步除錯 (Page2~11, 共 10) 條件式中斷點 (Page12~17, 共 6)

More information

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D> 第 7 章 Java 的图形与用户界面 7.1 概述 7.2 底层容器类 JFrame 和 JApplet 7.3 容器的布局 74 7.4 字体和颜色的使用 7.1 概述 利用 Java 中的图形 图像和重要的图形界面组件 (Componet) p 可以实现不同外观要求的窗口 图形和交互方式 1.java.awt awt 包 AWT 是抽象窗口工具集 Abstract Window Toolkit

More information

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new ListView 自訂排版 主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new int[]{r.drawable.dog1, R.drawable.dog2,

More information

untitled

untitled -JAVA 1. Java IDC 20 20% 5 2005 42.5 JAVA IDC JAVA 60% 70% JAVA 3 5 10 JAVA JAVA JAVA J2EE J2SE J2ME 70% JAVA JAVA 20 1 51 2. JAVA SUN JAVA J2EE J2EE 3. 1. CSTP CSTP 2 51 2. 3. CSTP IT CSTP IT IT CSTP

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)

More information

上海市本科教学质量年度报告

上海市本科教学质量年度报告 上 海 市 本 科 教 学 质 量 年 度 报 告 数 据 内 涵 说 明 V2.0 版 上 海 市 教 委 高 教 处 上 海 喆 思 (2015.07.02) 目 录 一 基 本 统 计 挃 标 说 明... 4 二 挃 标 解 释... 4 1. 全 日 制 在 校 本 科 生 数 及 占 在 校 生 总 数 的 比 例 ( 学 年 )... 4 2. 当 年 本 科 招 生 与 业 总 数

More information

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D> 第 12 章图形用户界面基础 1 动因 为 Java GUI 程序设计而设计的 API 是如何应用面向对象 原则的绝佳范例 从本章开始将学习 Java GUI API 的框 架结构, 还要学习如何使用 GUI 组件为应用程序和 applet 开发用户友好接口 2 学习目标 区分 Swing 和 AWT 的不同 ( 第 12.2 节 ) 描述 Java GUI API 的层次体系结构 ( 第 12.3

More information

week06.key

week06.key 基礎網 頁設計 第六週 老師 : 蔡孟珂 大綱 HTML 標籤屬性 DOM(Document Object Model) 文件物件模型 樹的概念 CSS 撰寫與常 用語法 HTML 標籤屬性 id 唯 一值 同 一份 html 中, 標籤裡不能有重複的 id 名稱 頁底資訊 1 連結

More information

SW cdr

SW cdr 1~2 3 4 5~6 7~8 9~10 11 12 13 14 15 16~18 16 16 17 17 18 18 18 19 19 19 20 21 22 23~26 23 24 24 25 26 27 27 27 : 110V 1 110V 110V 15A 2 3 23 24 4 ( ) 5 6 1 2 26 20 l 1 7 3 4 5 15 17 18 12 7~13 6 ~ 8 ~

More information

電機工程系認可證照清單 2011/7/1

電機工程系認可證照清單                  2011/7/1 南 台 科 技 大 學 電 機 工 程 系 專 業 證 照 課 程 實 施 要 點 96 年 10 月 05 日 系 務 會 議 通 過 100 年 06 月 30 日 系 務 會 議 修 正 通 過 101 年 06 月 21 日 系 務 會 議 修 正 通 過 一 本 系 為 提 升 學 生 的 專 業 技 能, 特 訂 定 本 辦 法 二 實 施 對 象 : 本 系 日 間 部 96 學 年

More information

Mac Java import com.apple.mrj.*;... public class MyFirstApp extends JFrame implements ActionListener, MRJAboutHandler, MRJQuitHandler {... public MyFirstApp() {... MRJApplicationUtils.registerAboutHandler(this);

More information

The golden pins of the PCI card can be oxidized after months or years

The golden pins of the PCI card can be oxidized after months or years Q. 如何在 LabWindows/CVI 編譯 DAQ Card 程式? A: 請參考至下列步驟 : 步驟 1: 安裝驅動程式 1. 安裝 UniDAQ 驅動程式 UniDAQ 驅動程式下載位置 : CD:\NAPDOS\PCI\UniDAQ\DLL\Driver\ ftp://ftp.icpdas.com/pub/cd/iocard/pci/napdos/pci/unidaq/dll/driver/

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

EJB-Programming-4-cn.doc

EJB-Programming-4-cn.doc EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session

More information

D C 93 2

D C 93 2 D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,

More information

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc)

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc) SCJP (Oracle Certified Professional, Java SE5/6 Programmer) 學 制 / 班 級 : 四 年 制 / 網 通 四 乙 指 導 老 師 : 方 信 普 老 師 學 生 學 號 / 姓 名 : 49636107 蘇 建 瑋 繳 交 年 份 : 100 年 6 月 一 SCJP 介 紹 SCJP 是 Sun Certified Java Programmer

More information

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 Excel - - Excel - -4-5 840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 ( 0 ) 智慧標籤 相關說明提示 -5 -- Excel 4 5 6 7 8 + - * / % ^ = < >= & 9 0 (:) (,) ( ) Chapter - :,

More information

基于ECO的UML模型驱动的数据库应用开发1.doc

基于ECO的UML模型驱动的数据库应用开发1.doc ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

18_GUI

18_GUI 圖形使用者介面 什麼是圖形使用者介面? 圖形使用者介面 (Graphics User Interface, GUI) 以圖像方式與使用者互動 : 程式顯示訊息 程式顯示資訊 操介界面 例子 : 電視遊樂器 電腦遊戲 Yung-Chen Chou 1 圖形使用者介面 要讓 Java 在 MS Windows 作業系統下或 Linux/Unix 下的 X windows 環境下以圖形方式呈現必須靠 Java

More information

1.5招募说明书(草案)

1.5招募说明书(草案) PUBLIC 2014 1 PUBLIC - 1 2014 1 PUBLIC - 2 2014 1 PUBLIC - 3 2014 1 PUBLIC - 4 2014 1 PUBLIC - 5 2014 1 PUBLIC - 6 2014 1 PUBLIC - 7 2014 1 PUBLIC - 8 2014 1 PUBLIC - 9 2014 1 PUBLIC - 10 2014 1 PUBLIC

More information

Dynamic Layout in Android

Dynamic Layout in Android Dynamic Layout in Android 建國科技大學資管系 饒瑞佶 2013/5 V1 Layout 多半都透過 res/layout/xml 格式設定來達成 Android 是 OOP, 所以可以動態產生 Layout 重點是 Layout 的階層關係 (Hierarchy) 需要處理對應事件 最後一樣用 setcontentview 加入 Layout 一 加入現有 Layout 中

More information

1. 2. Flex Adobe 3.

1. 2. Flex Adobe 3. 1. 2. Flex Adobe 3. Flex Adobe Flex Flex Web Flex Flex Flex Adobe Flash Player 9 /rich Internet applications/ria Flex 1. 2. 3. 4. 5. 6. SWF Flash Player Flex 1. Flex framework Adobe Flex 2 framework RIA

More information

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题 2009 年 3 月 全 国 计 算 机 等 级 考 试 笔 试 试 卷 二 级 Java 语 言 程 序 设 计 ( 考 试 时 间 90 分 钟, 满 分 100 分 ) 一 选 择 题 ( 每 题 2 分, 共 70 分 ) 下 列 各 题 A) B) C) D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的 请 将 正 确 选 项 填 涂 在 答 题 卡 相 应 位 置 上,

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入 100 年 特 種 考 試 地 方 政 府 公 務 人 員 考 試 試 題 等 別 : 三 等 考 試 類 科 : 資 訊 處 理 科 目 : 系 統 分 析 與 設 計 一 請 參 考 下 列 旅 館 管 理 系 統 的 使 用 案 例 圖 (Use Case Diagram) 撰 寫 預 約 房 間 的 使 用 案 例 規 格 書 (Use Case Specification), 繪 出 入

More information

热设计网

热设计网 例 例 Agenda Popular Simulation software in PC industry * CFD software -- Flotherm * Advantage of Flotherm Flotherm apply to Cooler design * How to build up the model * Optimal parameter in cooler design

More information

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2

More information

圖 1. 手 工 搭 棚 [www.diyzone.net] 與 PCB 印 刷 電 路 板 PCB 除 了 電 路 之 外, 也 放 置 各 種 電 子 零 件 如 圖 2 所 示, 電 子 零 件 與 PCB 的 接 合 方 式 有 二 : 插 件 式 (Pin Through Hole, PT

圖 1. 手 工 搭 棚 [www.diyzone.net] 與 PCB 印 刷 電 路 板 PCB 除 了 電 路 之 外, 也 放 置 各 種 電 子 零 件 如 圖 2 所 示, 電 子 零 件 與 PCB 的 接 合 方 式 有 二 : 插 件 式 (Pin Through Hole, PT 作 者 : 楊 哲 彰 (2005-02-23); 推 薦 : 徐 業 良 (2005-02-28) 附 註 : 本 文 為 元 智 大 學 機 械 系 自 動 化 機 械 設 計 課 程 教 材 Protel 電 腦 輔 助 電 路 設 計 軟 體 入 門 (2) PCB 製 作 與 輸 出 在 先 前 的 文 件 中, 介 紹 了 Protel 99 SE 的 基 本 操 作, 並 且 以 穩

More information

untitled

untitled 1 7 7.1 7.2 7.3 7.4 7.5 2 7.1 VFT virtual 7.1 3 1 1. 2. public protected public 3. VFT 4. this const volatile 4 2 5. ( ) ( ) 7.1 6. no-static virtual 7.2 7. inline 7.3 5 3 8. this this 9. ( ) ( ) delete

More information

書面

書面 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 5.4 互動功能畫面 程式碼請參考附件-程式三 在進入互動頁面時 會執行setAllText()依寵物狀態數值來 設定狀態文字與頭像 並且依心情決定是否要不要播放音效 觸摸的區域 由於是自己寫的 view 所以並未透過xml來設置 而是透過Layut.addview()來動態新增

More information

投影片 1

投影片 1 資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection

More information

附录J:Eclipse教程

附录J:Eclipse教程 附 录 J:Eclipse 教 程 By Y.Daniel Liang 该 帮 助 文 档 包 括 以 下 内 容 : Eclipse 入 门 选 择 透 视 图 创 建 项 目 创 建 Java 程 序 编 译 和 运 行 Java 程 序 从 命 令 行 运 行 Java Application 在 Eclipse 中 调 试 提 示 : 在 学 习 完 第 一 章 后 使 用 本 教 程 第

More information

Microsoft Word - ACI chapter00-1ed.docx

Microsoft Word - ACI chapter00-1ed.docx 前言 Excel Excel - v - 財務管理與投資分析 -Excel 建模活用範例集 5 相關 平衡 敏感 - vi - 前言 模擬 If-Then 規劃 ERP BI - vii - 財務管理與投資分析 -Excel 建模活用範例集 ERP + BI + ERP BI Excel 88 Excel 1. Excel Excel 2. Excel 3. Excel - viii - 前言 1.

More information

利用Java技术编写桌面软件基础

利用Java技术编写桌面软件基础 利 用 Java 技 术 编 写 桌 面 软 件 基 础 在 学 习 Java 编 程 语 言 的 细 节 和 语 法 时, 我 们 会 碰 到 这 样 一 个 问 题 : 开 发 桌 面 应 用 软 件 需 要 使 用 哪 些 Java 技 术, 应 当 引 入 哪 些 package? 这 一 问 题 的 答 案 取 决 于 开 发 的 应 用 软 件 类 型 和 它 的 作 用 这 篇 文 章

More information

建立Android新專案

建立Android新專案 經濟部工業局 Android 智慧型手機程式設計實務應用班 Android WebService 建國科技大學資管系 饒瑞佶 2012/4 WebService 需要 ksoap2-android-assembly-2.5.2-jar-withdependencies.jar 或 ksoap2-android-assembly-2.5.2-jar-withdependencies_timeout1.jar

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

Chapter V.S. PC

Chapter V.S. PC Chapter 14 14-1 V.S. PC 14-2 14-3 14-4 14-1 V.S. PC PC PC Yahoo! PC (https://tw.yahoo.com/) Yahoo! (https:// tw.mobi.yahoo.com/) Yahoo! a b a PC b PC PC Flash HTML5 CSS3 PC 14-2 14-3 PC PC Yahoo! PC https://tw.yahoo.com/

More information

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 Web (CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 1092 1/ 16 30.75 748 2005 1 1 2005 1 1 : 1 3 100

More information

java2d-4.PDF

java2d-4.PDF 75 7 6 G r a d i e n t P a i n t B a s i c S t r o k e s e t P a i n t ( ) s e t S t o r k e ( ) import java.awt.*; import java.awt.geom.*; public class PaintingAndStroking extends ApplicationFrame { public

More information

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1 0 0 = 1 0 = 0 1 = 0 1 1 = 1 1 = 0 0 = 1 : = {0, 1} : 3 (,, ) = + (,, ) = + + (, ) = + (,,, ) = ( + )( + ) + ( + )( + ) + = + = = + + = + = ( + ) + = + ( + ) () = () ( + ) = + + = ( + )( + ) + = = + 0

More information

上海浦~1

上海浦~1 上 海 浦 发 银 行 参 与 高 等 职 业 教 育 人 才 培 养 年 度 报 告 ( ) 一 校 企 合 作 概 况 ( 一 ) 企 业 简 介 上 海 浦 东 发 展 银 行 股 份 有 限 公 司 ( 以 下 简 称 : 浦 发 银 行 ) 是 1992 年 8 月 28 日 经 中 国 人 民 银 行 批 准 设 立 1993 年 1 月 9 日 开 业 1999 年 在 上 海 证 券

More information

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class 踩地雷遊戲 高慧君南港高中 開啟專案 MineSweep 任務一 : 產生 30X20 個磚塊編輯 Table 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) import java.util.arraylist; Write a description of class MyWorld

More information

大漠 伪前端, 就职于淘宝

大漠 伪前端, 就职于淘宝 CSS Grid Layout 2016-12-17 @ 大漠. #CSSConf https://www.flickr.com/photos/19139526@n00/8331063530/ 大漠 伪前端, 就职于淘宝 古老的 table 布局 现代 Web 布局 Float inline-block display: table position (absolute 或 relative)

More information

Java 1 Java String Date

Java 1 Java String Date JAVA SCJP Java 1 Java String Date 1Java 01 Java Java 1995 Java Java 21 Java Java 5 1-1 Java Java 1990 12 Patrick Naughton C++ C (Application Programming Interface API Library) Patrick Naughton NeXT Stealth

More information

172174 (Bluesky_MO) Redacted_.indb

172174 (Bluesky_MO) Redacted_.indb [] [] [] [] [] 95, 1961 4 2, 199 85 212 7 21513, 215 12 316,7 1%215 12 31 1,56.7 21122 22, 2, 19,8 18, 16, 16, 14, 12,9 12, 1, 8, 6, 4, 3,15 3,37 4,2 5, 6,7 8,4 1,4 2, 211 212 213 214 215 216 217 218 219

More information

Microsoft PowerPoint - 20130411-龍華科技大學遊戲系-Unity teaching

Microsoft PowerPoint - 20130411-龍華科技大學遊戲系-Unity teaching Unity 開 發 實 務 ( 一 ) 雷 爵 網 絡 尤 治 凱 關 於 我 龍 華 科 技 大 學 多 媒 體 與 遊 戲 發 展 科 學 系 畢 業 4 年 遊 戲 業 資 歷 現 任 雷 爵 網 絡 遊 戲 開 發 工 程 師 1 款 單 機 遊 戲 開 發 1 款 MMO 遊 戲 維 護 1 款 MMO 遊 戲 開 發,1 款 APP 開 發 綱 要 小 遊 戲 展 示 小 遊 戲 發 想

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt Java 程式設計基礎班 (8) 莊坤達台大電信所網路資料庫研究室 Email: doug@arbor.ee.ntu.edu.tw Class 8 1 回顧 Java Data Structure Class 8 2 Java AWT package Component: 一些 GUI 元件, 如 : Button Label 等 Container: 用來放置 GUI 元件的地方 Container

More information

EJB-Programming-3.PDF

EJB-Programming-3.PDF :, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client

More information

Strings

Strings Polymorphism and Virtual Functions Cheng-Chin Chiang Virtual Function Basics 多 型 (Polymorphism) 賦 予 一 個 函 數 多 種 意 涵, 存 在 於 同 一 類 別 之 內 祖 先 類 別 與 後 代 類 別 間 物 件 導 向 程 式 設 計 基 本 原 理 虛 擬 函 數 (Virtual Function)

More information

The Embedded computing platform

The Embedded computing platform 嵌入式系統及實驗 Embedded System and Experiment 詹曉龍 長庚大學電機系 Java 的類別與物件 : 宣告類別 建構子 public class Customer { private String name; private String address; // Customer 類別宣告 // 成員資料 public int age; // 建構子 : 使用參數設定成員資料初始值

More information

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 JAVA 程 序 设 计 ( 肆 ) 徐 东 / 数 学 系 使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 使 用 Java class 代 表 保 险 箱 public class SaveBox 类 名 类 类 体 实 现 封 装 性 使 用 class SaveBox 代 表 保

More information

Learning Java

Learning Java Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10

More information

RUN_PC連載_10_.doc

RUN_PC連載_10_.doc PowerBuilder 8 (10) Jaguar CTS ASP Jaguar CTS PowerDynamo Jaguar CTS Microsoft ASP (Active Server Pages) ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar Server ASP

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

e01 1....5 1.1....5 1.1.1....5 1.1.2....6 1.1.3....8 1.1.4....9 1.1.5....11 1.1.6. /...16 1.1.7. /...19 1.1.8. /...21 1.1.9....24 1.1.10....24 1.1.11....28 1.1.12....36 1.1.13....45 1.1.14....48 1.1.15....50

More information

contents 1 4 Chapter 2 Chapter 5 Chapter 管理自動儲存的版本 以文件復原窗格復原檔案 自訂快速工具 自訂快速存取工具列 自訂功能區

contents 1 4 Chapter 2 Chapter 5 Chapter 管理自動儲存的版本 以文件復原窗格復原檔案 自訂快速工具 自訂快速存取工具列 自訂功能區 與 Windows 8 完美結合的 Word 2013 1-1 瀏覽 Word 2013 使用介面...1-2 1-2 操作環境選項與帳戶設定...1-14 contents 1 Chapter 1-3 不可不會的線上求助...1-20 1-4 下載與安裝 Office 2013 評估版...1-24 ( 參考範例光碟的 PDF) 文件內容的基本操作 2-1 文字內容的產生...2-2 2-1-1

More information

土壤力學概論及第一章

土壤力學概論及第一章 87 11 1 (Soil Mechanics) (Geotechnical Engineering) (Soil Mechanics) (Foundation Engineering) (Engineering Geology) (Rock Mechanics) 1925 Karl Terzaghi Terzaghi (Rock Cycle) 2 (Specific Gravity, G s )

More information

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2 Chapter 02 變數與運算式 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 type 2.2.4 2.3 2.3.1 print 2.3.2 input 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 + 2.4.6 Python Python 2.1 2.1.1 a p p l e b e a r c 65438790

More information

mvc

mvc Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication

More information

bootstrap - 2

bootstrap - 2 RITA TEACHING Bootstra p ENTER bootstrap - 2 bootstrap - 3 bootstrap 101 Template

More information

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 语 言 程 序 设 计 郑 莉 胡 家 威 编 著 清 华 大 学 逸 夫 图 书 馆 北 京 内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 握 语

More information

ebook

ebook 26 JBuilder RMI Java Remote Method Invocation R M I J a v a - - J a v a J a v J a v a J a v a J a v a R M I R M I ( m a r s h a l ) ( u n m a r c h a l ) C a ff e i n e J a v a j a v a 2 i i o p J a v

More information

Chemcad.doc

Chemcad.doc Chemcad 00-4 Chemcad Chemcad Chemstations Chemcad CHEMCAD Chemstations 1.1 CHEMCAD A. B. / C. / D. 1.2CHEMCAD CHEMCAD ChemCAD 50 1.3 CHEMCAD 39 K 13 K UNIFAC UPLM (UNIFAC for Polymers)Wilson T. K. Wilson

More information

46 2011 11 467 數位遊戲式學習系統 7 2011 11 467 47 3 DBGameSys 48 2011 11 467 正規化資料模組 如何配置並儲存電子化資料 以 便減少資料被重覆儲存的程序 DBGameSys的主要功能模組包 學習者 審核評分模組 含 正規化資料模組 審核評分 模組 高分列表模組3大區塊 系統資料庫 在正規化資料模組的執行 高分列表模組 過程中 先要求學習者瀏覽遊戲

More information

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持 第 一 篇 知 己 知 彼, 百 战 不 殆 基 本 评 估 篇 第 一 章 认 识 自 我 我 就 是 一 座 金 矿 人 啊, 认 识 你 自 己! 塔 列 斯 ( 希 腊 学 者 ) 要 想 知 道 去 哪 儿, 必 须 先 知 道 你 现 在 在 哪 儿 和 你 是 谁 茜 里 娅. 德 纽 斯 ( 美 国 职 业 指 导 学 家 ) 本 章 提 要 了 解 认 识 自 我 在 职 业 生

More information

目 录 第 一 部 分 档 案 局 概 况 一 主 要 职 责 二 部 门 决 算 单 位 构 成 第 二 部 分 档 案 局 2016 年 度 部 门 预 算 表 一 2016 年 度 市 级 部 门 收 支 预 算 总 表 二 2016 年 度 市 级 部 门 支 出 预 算 表 三 2016

目 录 第 一 部 分 档 案 局 概 况 一 主 要 职 责 二 部 门 决 算 单 位 构 成 第 二 部 分 档 案 局 2016 年 度 部 门 预 算 表 一 2016 年 度 市 级 部 门 收 支 预 算 总 表 二 2016 年 度 市 级 部 门 支 出 预 算 表 三 2016 档 案 局 2016 年 度 部 门 预 算 1 目 录 第 一 部 分 档 案 局 概 况 一 主 要 职 责 二 部 门 决 算 单 位 构 成 第 二 部 分 档 案 局 2016 年 度 部 门 预 算 表 一 2016 年 度 市 级 部 门 收 支 预 算 总 表 二 2016 年 度 市 级 部 门 支 出 预 算 表 三 2016 年 度 市 级 部 门 财 政 拨 款 支 出 预

More information

2015 年 度 收 入 支 出 决 算 总 表 单 位 名 称 : 北 京 市 朝 阳 区 卫 生 局 单 位 : 万 元 收 入 支 出 项 目 决 算 数 项 目 ( 按 功 能 分 类 ) 决 算 数 一 财 政 拨 款 168738.36 一 一 般 公 共 服 务 支 出 53.83 二

2015 年 度 收 入 支 出 决 算 总 表 单 位 名 称 : 北 京 市 朝 阳 区 卫 生 局 单 位 : 万 元 收 入 支 出 项 目 决 算 数 项 目 ( 按 功 能 分 类 ) 决 算 数 一 财 政 拨 款 168738.36 一 一 般 公 共 服 务 支 出 53.83 二 2015 年 度 部 门 决 算 报 表 ( 含 三 公 经 费 决 算 ) 2015 年 度 收 入 支 出 决 算 总 表 单 位 名 称 : 北 京 市 朝 阳 区 卫 生 局 单 位 : 万 元 收 入 支 出 项 目 决 算 数 项 目 ( 按 功 能 分 类 ) 决 算 数 一 财 政 拨 款 168738.36 一 一 般 公 共 服 务 支 出 53.83 二 上 级 补 助 收 入

More information

Android Android Android SDK iv

Android Android Android SDK iv Android Market Google Android SDK Apple Google Microsoft b2c b 2010 Internet Android how why iii Android 240... Android Android SDK iv Android Market Google Android SDK Visual C++ Java N-tier J2EE Unix/Linux

More information

滙豐強積金僱主熱線 滙豐強積金網頁 L-MPF001B v07/1016 (1016) H

滙豐強積金僱主熱線 滙豐強積金網頁  L-MPF001B v07/1016 (1016) H 強積金指南 滙豐強積金僱主熱線 2583 8033 滙豐強積金網頁 www.hsbc.com.hk/mpf L-MPF001B v07/1016 (1016) H 65 60 1 2 73770 2583 8033 www.hsbc.com.hk/mpf 滙豐強積金與您, 昂首向前邁步 3 1 5 2 6 2.1 6 2.2 7 2.3 8 3 10 3.1 10 3.2 11 3.3 15 4 17

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

untitled

untitled 51testing www.51testing.com UML Java Unified Modeling Language UML 1 UML 2 UML UML UML UML UML UML use case Java 1 2 3 4( 5 6 7 UNIX Windows OS/2 ( GUI ) 8 51testing www.51testing.com use caseactor ()

More information

epub 66-4

epub 66-4 4 5 Page Layout Wi z a r d Visio 2000 Page Layout Wi z a r d 4 Visio Custom Properties Visio 2000 O ffice Layout Cause and Effect Diagram Visio 2000 1) 2) 4.1 Visio 2000 F i l e N e w Visio 2000 Block

More information

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指 内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指 导 你 搭 建 Linux 平 台 下 的 JAVA 开 发 环 境, 包 括 JDK 以 及 集

More information

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4];

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4]; Introduction to Programming (II) Spring 2008, Final Exam Name: ID Number: [True/False:] (5 points each) If your answer is "false", you have to provide correct reasons. Otherwise, no points will be given.

More information

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难 第 1 章 Java 概 述 Java 的 诞 生 Java 的 特 点 Java 开 发 环 境 安 装 与 配 置 创 建 并 运 行 一 个 简 单 的 Java 程 序 Java 语 言 是 当 今 计 算 机 软 件 行 业 中 最 热 门 的 网 络 编 程 语 言, 以 Java 为 核 心 的 芯 片 技 术 编 译 技 术 数 据 库 连 接 技 术, 以 及 基 于 企 业 级

More information

投影片 1

投影片 1 Introduction to CSS Cascading Style Sheets 網頁設計 / 林金祥 Webpage Design/ by Chin-Hsiang Lin 網頁設計概念 java, asp: CSS: 特殊功能 式樣設計 HTML: 文字 圖像內容 Webpage Design/ by Chin-Hsiang Lin 2 CSS:Fly! My Webpage! CSS: Cascading

More information

p.2 1 <HTML> 2 3 <HEAD> 4 <TITLE> </TITLE> 5 </HEAD> 6 7 <BODY> 8 <H3><B> </B></H3> 9 <H4><I> </I></H4> 10 </BODY> </HTML> 1. HTML 1. 2.

p.2 1 <HTML> 2 3 <HEAD> 4 <TITLE> </TITLE> 5 </HEAD> 6 7 <BODY> 8 <H3><B> </B></H3> 9 <H4><I> </I></H4> 10 </BODY> </HTML> 1. HTML 1. 2. 2005-06 p.1 HTML HyperText Mark-up Language 1. HTML Logo, Pascal, C++, Java HTML 2. HTML (tag) 3. HTML 4. HTML 1. HTML 2. 3. FTP HTML HTML html 1. html html html cutehtmleasyhtml 2. wyswyg (What you see

More information

- March 纬 34.8 度 118.5 度 );1679 年 9 月 2 日 河 北 三 河 ( 北 纬 40 度, 东 经 117.1 度 )- 平 谷 ( 北 纬 40.2 度, 东 经 117.2 度 ) 间 8 级 地 震 ( 震 中 不 详 ), 波 及 北 京 的 烈 度 达 历

- March 纬 34.8 度 118.5 度 );1679 年 9 月 2 日 河 北 三 河 ( 北 纬 40 度, 东 经 117.1 度 )- 平 谷 ( 北 纬 40.2 度, 东 经 117.2 度 ) 间 8 级 地 震 ( 震 中 不 详 ), 波 及 北 京 的 烈 度 达 历 国 脐 地 心 聚 藏 的 原 震 宿 命 : 中 日 多 难 兴 邦 历 程 的 表 征 汶 川 劫 难 阪 神 剧 震 史 鉴 合 镜 对 照 之 二 夏 刚 摇 篮 震 带 魔 障 怪 力 之 神 符 凶 兆 : 原 难 宿 命 循 环 劫 结, 奇 特 拐 点 暗 喻 警 世 近 2 800 多 年 来 有 记 载 的 中 国 特 大 地 震 几 乎 如 数 发 生 在 大 陆 上, 仅 1

More information

表二 105 年國中教育會考英語科閱讀與聽力答對題數對應整體能力等級加標示對照表 閱讀答 對題數 聽力答對題數 待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強

表二 105 年國中教育會考英語科閱讀與聽力答對題數對應整體能力等級加標示對照表 閱讀答 對題數 聽力答對題數 待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強待加強 表一 105 年國中教育會考國文科 社會科與自然科能力等級加標示與答對題數對照表 國文社會自然 A++ 46-48 60-63 51-54 A+ 42-48 44-45 54-63 58-59 46-54 49-50 A 42-43 54-57 46-48 B++ 37-41 45-53 37-45 B+ 20-41 31-36 24-53 38-44 20-45 30-36 B 20-30 24-37

More information

10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD

10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD 10 SCJD 簡介 Java 10-2 SCJP SCJD 10.1 昇陽認證 Java 系統開發工程師 的認證程序 Java IT SCJD 10 SCJD 10-3 Java Java SCJD 7 Swing RMI 10.1.1 The Assignment The Essay 9 10 10-4 SCJP SCJD 90 10.1.2 SCJP Java 90 120 Swing 10

More information

Text 文字输入功能 , 使用者可自行定义文字 高度, 旋转角度 , 行距 , 字间距离 和 倾斜角度。

Text 文字输入功能 , 使用者可自行定义文字  高度, 旋转角度 , 行距 , 字间距离 和 倾斜角度。 GerbTool Wise Software Solution, Inc. File New OPEN CLOSE Merge SAVE SAVE AS Page Setup Print Print PreView Print setup (,, IMPORT Gerber Wizard Gerber,Aperture Gerber Gerber, RS-274-D, RS-274-X, Fire9000

More information

運算子多載 Operator Overloading

運算子多載 Operator Overloading 函數樣板 (Function Template) 與 類別樣板 (Class Template) 講師 : 洪安 1 資料結構與 C++ 程式設計進階班 為何需要通用函數? (1/2) int abs(int x) { return (x>0)?x:-x; 取名困難不好記 float fabs(float x) { return (x>0)?x:-x; complex cabs(complex x)

More information

健保資訊網服務系統 (VPN)- 瀏覽器設定 目 次 壹 作業目的及功能... 2 一 作業目的... 2 二 作業功能... 2 貳 瀏覽器設定說明... 3 一 Internet Explorer 8(IE 8)... 5 二 Internet Explorer 9(IE 9)... 8 三 I

健保資訊網服務系統 (VPN)- 瀏覽器設定 目 次 壹 作業目的及功能... 2 一 作業目的... 2 二 作業功能... 2 貳 瀏覽器設定說明... 3 一 Internet Explorer 8(IE 8)... 5 二 Internet Explorer 9(IE 9)... 8 三 I 健保資訊網服務系統 (VPN)- 瀏覽器設定 目 次 壹 作業目的及功能... 2 一 作業目的... 2 二 作業功能... 2 貳 瀏覽器設定說明... 3 一 Internet Explorer 8(IE 8)... 5 二 Internet Explorer 9(IE 9)... 8 三 Internet Explorer 10(IE 10)... 11 四 Internet Explorer

More information

《面向对象程序设计A》课程教学大纲Ⅱ4

《面向对象程序设计A》课程教学大纲Ⅱ4 Java 程 序 设 计 课 程 教 学 大 纲 Ⅱ5 课 程 代 码 : 课 程 名 称 :Java 程 序 设 计 Java Programming 学 分 :5 总 学 时 :80 ( 其 中 : 理 论 学 时 :48 实 验 ( 上 机 ) 学 时 :32) 先 修 课 程 : 2106010190 大 学 计 算 机 信 息 技 术 基 础 适 用 对 象 : 本 二 工 科 非 计 算

More information