YOMEDIA
ADSENSE
LẬP TRÌNH JAVASWING LAYOUT MANAGER
67
lượt xem 5
download
lượt xem 5
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Tham khảo tài liệu 'lập trình javaswing layout manager', công nghệ thông tin phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: LẬP TRÌNH JAVASWING LAYOUT MANAGER
- LẬP TRÌNH JAVA SWING LAYOUT MANAGER Nguyễn Hoàng Anh – nhanh@fit.hcmus.edu.vn ĐHKHTN - 2011
- Nội dung Flow Layout Border Layout Card Layout Grid Layout Grid Bag Layout Box Layout Group Layout
- 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. 3
- Layout Manager Mỗi Container có một đối tượng Layout Manager mặc định, nhưng hoàn toàn có thể gán cho Container một đối tượng Layout Manger theo ý muốn. Mỗi loại Layout Manager có các nguyên tắc riêng cho việc bố trí các Component bên trong một Container. Một Layout Manager chịu trách nhiệm bố trí các Component được thêm vào Container và khi Container thay đổi kích thước Sử dụng phương thức setLayout (LayoutManager mng) của Container để thay đổi cách bố trí các Component bên trong nó. 4
- FlowLayout Hình ảnh 5
- 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 6
- FlowLayout – Phương thức thông dụng Phương thức khởi tạo mặc định – public FlowLayout () • align: FlowLayout.CENTER • vgap: 5px, hgap: 5px Phương thức khởi tạo có tham số – FlowLayout (int align) • align: canh lề – FlowLayout.CENTER : Canh giữa – FlowLayout.LEFT; : Canh trái – FlowLayout.RIGHT; : Canh phải • hgap: 5px, vgap: 5px 7
- FlowLayout – Phương thức thông dụng Phương thức khởi tạo có tham số – FlowLayout(int align, int vgap, int hgap) • align : canh lề • vgap : kích thước chiều ngang • hgap: chiều dọc 8
- FlowLayout – Phương thức thông dụng public void setAlignment(int align) public void setHgap(int hgap) public void setVgap (int vgap) public int getAlignment() public int getHgap () public int getVgap () 9
- FlowLayout - Demo 10
- FlowLayout - Demo package swinglayoutmanager; 1 2 3 import java.awt.FlowLayout; 4 import javax.swing.*; 5 6 public class FlowLayoutFrame extends JFrame { 7 //Các control 8 9 private JButton[] jbts; 10 //Phương thức khởi tạo 11 public FlowLayoutFrame () { 12 this.initComponents(); 13 } 14 ... 15 11
- FlowLayout - Demo //Phương thức khởi tạo các thành phần 1 private void initComponents() { 2 //MainFrame 3 this.setDefaultCloseOperation( 4 WindowConstants.EXIT_ON_CLOSE); 5 this.setTitle("FlowLayout"); 6 FlowLayout layout=new FlowLayout(); 7 layout.setAlignment(FlowLayout.LEFT); 8 this.setLayout(layout ); 9 //jbts 10 this.jbts = new JButton[45]; 11 for (int i = 0; i < 45; i++) { 12 this.jbts[i] = new JButton(); 13 this.jbts[i].setText(String.valueOf(i+1)); 14 this.getContentPane().add(this.jbts[i]); 15 } 16 pack(); 17 } 18 } 19 12
- BorderLayout Border Layout bố trí các Component bên trong Container theo 5 vùng: – "North", "South", "East", "West" ,"Center". 13
- BorderLayout – Phương thức thông dụng Phương thức khởi tạo mặc định – public BorderLayout () • hgap = 0 • vgap = 0 Phương thức khởi tạo có tham số – public BorderLayout (int hgap, int vgap) • hgap: chiều ngang • vgap : chiều dọc 14
- BorderLayout – Phương thức thông dụng public void setHgap(int hgap) public void setVgap (int vgap) public int getHgap() public int getVgap () 15
- BorderLayout - Demo 16
- BorderLayout - Demo package swinglayoutmanager; 1 2 import java.awt.BorderLayout; 3 import javax.swing.*; 4 5 public class BorderLayoutFrame extends JFrame { 6 //Các control 7 private JButton jbtNorth; 8 private JButton jbtSouth; 9 private JButton jbtEast; 10 private JButton jbtWest; 11 private JButton jbtCenter; 12 13 //Phương thức khởi tạo 14 public BorderLayoutFrame() { 15 this.initComponents(); 16 } 17 17
- BorderLayout - Demo //Phương thức khởi tạo các thành phần 1 private void initComponents() { 2 //MainFrame 3 this.setDefaultCloseOperation( 4 WindowConstants.EXIT_ON_CLOSE); 5 this.setTitle("BorderLayout"); 6 BorderLayout layout = new BorderLayout(); 7 this.setLayout(layout); 8 //jbtNorth 9 this.jbtNorth = new JButton("NORTH"); 10 this.getContentPane().add(this.jbtNorth, 11 BorderLayout.NORTH); 12 //jbtWest 13 this.jbtWest = new JButton("WEST"); 14 this.getContentPane().add(this.jbtWest, 15 BorderLayout.WEST); 16 17 18
- BorderLayout - Demo //jbtEast 1 2 this.jbtEast = new JButton("EAST"); 3 this.getContentPane().add(this.jbtEast, 4 BorderLayout.EAST); 5 //jbtSouth 6 this.jbtSouth = new JButton("SOUTH"); 7 this.getContentPane().add(this.jbtSouth, 8 BorderLayout.SOUTH); 9 10 //jbtCenter 11 this.jbtCenter = new JButton("CENTER"); 12 this.getContentPane().add(this.jbtCenter, 13 BorderLayout.CENTER); 14 15 pack(); 16 17 } } 19
- CardLayout Hình ảnh 20
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn