Tài liệu Bài giảng Lập trình Java 3 - Bài 3: Layout Manager - Trường Cao đẳng FPT: SOF203 - Lập trỡnh Java 3
Bài 3: Layout manager
Mục tiờu bài học
Giới thiệu về quản lý bố cục
FlowLayout
BorderLayout
GridLayout
CardLayout
BoxLayout
GridBagLayout
SpringLayout
GroupLayout
TabbedPaneLayout
SplitPaneLayout
Layout Manager
Một Container là một Component cú thể chứa cỏc
Component khỏc
JFrame, JDialog, JScollPane, Jpanel, JDesktopPane,
JInternalFrame
getContentPane().add để thờm Component vào Container
Mỗi Container cú một đối tượng Layout Manager
Layout Manager là một đối tượng quyết định cỏch sắp
xếp vị trớ của cỏc Component bờn trong một Container.
Cỏc Layout Manager “implements” từ interface
LayoutManager hoặc LayoutManger2.
FlowLayout
FlowLayout
Flow Layout bố trớ cỏc Component trong Container theo
dũng, từ trỏi sang phải theo thứ tự thờm vào.
Tạo dũng mới khi kớch thước dũng cũn lại khụng đủ chứa
Component thờm vào.
Flow Layout bố trớ vị trớ cỏc Component phụ thuộc vào...
23 trang |
Chia sẻ: quangot475 | Lượt xem: 730 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Bài giảng Lập trình Java 3 - Bài 3: Layout Manager - Trường Cao đẳng FPT, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
SOF203 - Lập trỡnh Java 3
Bài 3: Layout manager
Mục tiờu bài học
Giới thiệu về quản lý bố cục
FlowLayout
BorderLayout
GridLayout
CardLayout
BoxLayout
GridBagLayout
SpringLayout
GroupLayout
TabbedPaneLayout
SplitPaneLayout
Layout Manager
Một Container là một Component cú thể chứa cỏc
Component khỏc
JFrame, JDialog, JScollPane, Jpanel, JDesktopPane,
JInternalFrame
getContentPane().add để thờm Component vào Container
Mỗi Container cú một đối tượng Layout Manager
Layout Manager là một đối tượng quyết định cỏch sắp
xếp vị trớ của cỏc Component bờn trong một Container.
Cỏc Layout Manager “implements” từ interface
LayoutManager hoặc LayoutManger2.
FlowLayout
FlowLayout
Flow Layout bố trớ cỏc Component trong Container theo
dũng, từ trỏi sang phải theo thứ tự thờm vào.
Tạo dũng mới khi kớch thước dũng cũn lại khụng đủ chứa
Component thờm vào.
Flow Layout bố trớ vị trớ cỏc Component phụ thuộc vào
kớch thước của Container.
Mỗi dũng của cỏc Component được window mặc định
canh giữa theo chiều ngang . Cú thể điều chỉnh canh trỏi
hoặc phải
FlowLayout
Khởi tạo
• public FlowLayout ()
• align: FlowLayout.CENTER
• vgap: 5px, hgap: 5px
• FlowLayout (int align)
• align: canh lề
• FlowLayout.CENTER : Canh giữa
• FlowLayout.LEFT; : Canh trỏi
• FlowLayout.RIGHT; : Canh phải
• FlowLayout(int align, int vgap, int hgap)
• align : canh lề
• vgap : kớch thước chiều ngang
• hgap: chiều dọc
FlowLayout
Phương thức
public void setAlignment(int align)
public void setHgap(int hgap)
public void setVgap (int vgap)
public int getAlignment()
public int getHgap ()
public int getVgap ()
FlowLayout
Vớ dụ:
BorderLayout
Border Layout bố trớ cỏc Component bờn trong Container
theo 5 vựng:
"North", "South", "East", "West" ,"Center".
' 1 BorderLayout 1,0 1"đ
NORTHÍ
WEST CENTER EAST
SOUTH
BorderLayout
khởi tạo:
• public BorderLayout ()
• hgap = 0
• vgap = 0
• public BorderLayout (int hgap, int vgap)
• hgap: chiều ngang
• vgap : chiều dọc
BorderLayout
CardLayout
Card Layout quản lý nhiều Card cựng một khụng gian
hiển thị
Card Layout giỳp quản lý hai hay nhiều Component
(thường là JPanel) để chia sẽ cựng một khụng gian hiển
thị.
Chỉ duy nhất Top Card được hiển thị.
Mỗi “Card” cú thể sử dụng Layout Manager riờng.
Card nào cũng cú thể là Top Card
Cú thể sử dụng JTabbedPane để thay cho Card Layout
CardLayout
khởi tạo :
• public CardLayout ()
• hgap = 0
• vgap = 0
• public CardLayout (int hgap, int vgap)
• hgap: chiều ngang
• vgap : chiều dọc
CardLayout
Phương thức
• public void setHgap(int hgap)
• public void setVgap(int vgap)
• public int getHgap()
• public int getVgap()
• public void next (Container parent)
• public void previous(Container parent)
• public void first(Container parent)
• public void last(Container parent)
• public void show(Container parent, String name)
CardLayout
GridLayout
Grid Layout bố trớ cỏc Component của Container vào
bờn trong một Grid với cỏc Row và Column.
Mỗi Component được bố trớ trong 1 Cell của lưới.
Tất cả cỏc Cell cú cựng kớch thước bờn trong Grid.
Cỏc Component được thờm vào Container theo thứ tự từ
trỏi sang phải, từ trờn xuống dưới (mặc định).
Kớch thước của mỗi Cell được xỏc định bởi kớch thước
của Container.
GridLayout
Khởi tạo
• GridLayout()
• rows: 1
• -1 Component / 1 Column
• GridLayout(int rows, int cols)
• GridLayout(int rows, int cols, int hgap, int vgap)
GridLayout
GridBag Layout bố trớ cỏc Component trong một Grid
với cỏc Row và Column.
Mỗi Component bờn trong Grid được RowSpan và
ColumnSpan (giống table HTML)
Width và Height của cỏc Row/Column cú thể khỏc nhau.
GridBag Layout là một Layout Manager rất linh động
cho việc bố trớ cỏc Component bờn trong Container theo
dạng Grid.
GridBag Layout là một trong cỏc Layout Manager
thường sử dụng nhất mà Java Platform cung cấp.
GridLayout
Cỏc thuộc tớnh của GridBagContraints
• gridx ,gridy : vị trớ dũng, vị trớ cột
• gridheight , gridwidth : số lượng dũng, số lượng cột
• ipadx, ipady :
• Insets
• weightx, weighty
• fill :
• NONE, HORIZONTAL, VERTICAL, BOTH
GridLayout
Cỏc thuộc tớnh của GridBagContraints
• anchor:
BoxLayout
Box Layout bố trớ cỏc Component bờn trong Container
theo 1 dũng theo trục X, hoặc là trục Y.
BoxLayout(Container container, int align)
container: chứa cỏc Component
axis:
BoxLayout.X_AXIS : Trục X
BoxLayout.Y_AXIS : Trục Y
GroupLayout
Group Layout bố trớ cỏc Component bờn trong Container
theo chiều ngang và chiều dọc.
Sự bố trớ được thực hiện theo mỗi chiều riờng lẽ
XIN CẢM ƠN!
Các file đính kèm theo tài liệu này:
- sof203_slide3_9288_2154484.pdf