[JavaSwing] – HelloWorld

Trong bài viết này chúng ta sẽ tìm hiểu một số thao tác cơ bản để tạo ra một Jframe – nôm na đó là khung của ứng dụng.

 
package blog.itphutran.com.helloworld;
 
import javax.swing.JFrame;
 
public class HelloWorld {
    public static void main(String[] args) {
        // create frame with title "HelloWorld"
        JFrame frame = new JFrame("HelloWorld");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // set Size and location frame
        frame.setSize(250, 200);
        frame.setLocation(300, 200);
 
        // display frame
        frame.setVisible(true);
    }
}

Chúng ta có 4 hàm khởi tạo 1 JFrame:

JFrame() : Khởi tạo một frame mới invisible

h2
JFrame(GraphicsConfiguration qc) : Tạo một Frame được chỉ định GraphicsConfiguration của màn hình thiết

bị và tiêu đề trắng
JFrame(String title) : Tạo một frame mới invisibile với tiêu đề được chỉ định
JFrame(String title, GraphicsConfiguration qc) : Tạo một Frame được chỉ định tiêu đề và

GraphicsConfiguration của màn hình thiết bị.

Trong ví dụ trên chúng ta sử dụng phuơng thức khởi tạo thứ 3 để đặt tiêu đề cho frame.

Hàm setDefaultCloseOperation(int operation): Đặt hành động mặc định sẽ xảy ra khi người dùng đóng JFrame. Nếu không dùng hàm này để đặt thì mặc định là HIDE_ON_CLOSE (1) – Khi đóng frame sẽ bị ẩn đi chứ hoàn toàn không đóng lại.
Các lựa chọn khác gồm:
DO_NOTHING_ON_CLOSE (0) – không làm gì cả
DISPOSE_ON_CLOSE (2) – Chỉ đóng frame đó, các frame khác liên quan sẽ không bị đóng.
EXIT_ON_CLOSE (3) – Đóng toàn bộ các frame liên quan tới nó.

Hàm setSize đặt kích thước cho frame.
Hàm setLocation đặt vị trí xuất hiện của frame trên màn hình. Nếu muốn frame xuất hiện chính giữa màn hình ta dùng hàmsetLocationRelativeTo(null)
Hàm setVisible đặt chế độ hiển thị cho frame. Nếu không gọi hoặc đặt giá trị false cho hàm này thì frame sẽ không được hiển thị.

Ví dụ 2: Tạo 1 JFrame bằng cách kế thừa class JFrame.

 
package blog.itphutran.com.helloworld;
 
import javax.swing.JFrame;
import javax.swing.JLabel;
 
public class HelloWorld1 extends JFrame {
    public HelloWorld1() {
        // create frame with title "HelloWorld"
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setTitle("HelloWorld1");
 
        // set location
        setLocationRelativeTo(null);
 
        // add a JLabel
        add(new JLabel("HelloWorld"));
 
        // display frame
        pack();
        setVisible(true);
    }
 
    public static void main(String[] args) {
        new HelloWorld1();
    }
}

Trong ví dụ 2 này class của chúng ta kế thừa lớp JFrame nên nó chính là 1 JFrame, vì vậy trong phương thức khởi tạo HelloWorld1 chúng ta có thể gọi ngay các phương thức của JFrame.

hinh1Ngoài ra trong ví dụ này còn dùng 2 phương thức add() và pack(). Phương thức add giúp chúng ta thêm một đối tượng vào frame (ở đây là 1 JLabel), phương thức pack giúp frame có kích thước vừa đủ với nội dung của frame

ngay cả khi chúng ta đặt kích thước frame lớn hơn.

Phương thức setResizable(boolean resizable) dùng để đặt frame có thể được thay đổi kích thước hay không.

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest
0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận
x