Container trong Java là gì

Java AWT [Abstract Window Toolkit] là một API để phát triển các ứng dụng dựa trên GUI hoặc cửa sổ trong java.

Các thành phần Java AWT là các thành phần phụ thuộc vào nền tảng được hiển thị theo giao diện của hệ điều hành. AWT có nghĩa là các thành phần của nó sử dụng các tài nguyên của hệ điều hành.

Gói java.awt cung cấp các lớp cho api AWT như TextField, Label, TextArea, RadioButton, CheckBox, Choice, List, v.v.

Phân cấp Java AWT

Hệ thống phân cấp của các lớp Java AWT được đưa ra dưới đây.

Container

Vùng chứa [Container] là thành phần trong AWT mà chứa các thành phần khác như button, textfield, label, … Các lớp được kế thừa lớp Container được biết đến như các container như Frame, Dialog, Panel.

Window

The window is the container that have no borders and menu bars. You must use frame, dialog or another window for creating a window.

Panel

Panel là vùng chứa mà không chứa thanh tiêu đề và thanh menu. Nó có thể có các thành phần như button, textfield, …

READ  Biotin Là Thuốc Gì - Công Dụng & Liều Dùng Hello Bacsi

Frame

Khung [Frame] là vùng chứa thanh tiêu đề và có thể có các thanh trình đơn. Nó có thể có các thành phần khác như button, textfield, …

Các phương thức hữu ích của lớp Component

Ví dụ về AWT trong java

Để tạo ví dụ AWT đơn giản, bạn cần sử dụng Frame, có 2 cách để tạo Frame:

Bởi kế thừa lớp Frame. Bởi việc tạo đối tượng của lớp Frame.

Ví dụ về AWT trong java – kế thừa lớp Frame

Trong ví dụ này, chúng ta sẽ hiển thị thành phần Button trên khung.

package vn.tranminhdung.vn;import java.awt.Button;import java.awt.Frame;public class AWTExample1 extends Frame { AWTExample1[] { setTitle[“Vi du 1 AWT trong java”]; Button b = new Button[“click me”]; b.setBounds[30, 100, 80, 30]; // cai dat vi tri button add[b]; // them doi tuong button vao frame setSize[300, 300]; // kich thuoc frame voi width = 300 va height = 300 setLayout[null]; // khong trinh quan ly layout setVisible[true]; // hien thi frame } public static void main[String args] { new AWTExample1[]; }}
Kết quả:

READ  " Babit Là Gì ? Phân Loại Hợp Kim Làm Ổ Trượt Babit Là Gì

Ví dụ về AWT trong java – tạo thể hiện của lớp Frame

Ví dụ tạo thể hiện của lớp Frame:

package vn.tranminhdung.vn;import java.awt.Button;import java.awt.Frame;public class AWTExample2 { AWTExample2[] { Frame f = new Frame[]; f.setTitle[“Vi du 2 AWT trong java”]; Button b = new Button[“click me”]; b.setBounds[30, 50, 80, 30]; f.add[b]; f.setSize[300, 300]; f.setLayout[null]; f.setVisible[true]; } public static void main[String args] { new AWTExample2[]; }}
Kết quả:

Học Java Cơ Bản Xử lý sự kiện Java AWT Recent Updates Sử dụng Javascript trong HTMLToán tử dấu 2 chấm [::] trong Java 8Lambda Expression – Biểu thức Lambda trong java 8Bài tập Java – Sắp xếp nhanh [Quick Sort] trong JavaBài tập Java – Sắp xếp chèn [Insertion Sort] trong JavaBài tập Java – Sắp xếp nổi bọt [Bubble Sort] trong JavaBài tập quản lý sinh viên trong JavaHashSet trong javaHashMap trong javaLớp WindowAdapter trong Java SwingLớp MouseMotionAdapter trong Java SwingLớp MouseAdapter trong Java Swing tranminhdung.vn on facebook Học Lập Trình Online Miễn Phí – tranminhdung.vn

Danh sách bài học

Học java Học servlet Học jsp Học Hibernate Học Struts2 Học Spring Học SQL

Câu hỏi phỏng vấn

201 câu hỏi phỏng vấn java 25 câu hỏi phỏng vấn servlet 75 câu hỏi phỏng vấn jsp 52 câu hỏi phỏng vấn Hibernate 70 câu hỏi phỏng vấn Spring 57 câu hỏi phỏng vấn SQL

About tranminhdung.vn

Hệ thống bài học trên tranminhdung.vn bao gồm các bài lý thuyết và thực hành về các công nghệ java và công nghệ web. Các bài lý thuyết trên hệ thống tranminhdung.vn được tham khảo và tổng hợp từ các trang //javatpoint.com, //www.tutorialspoint.com, //docs.oracle.com/en …

READ  Nâng Cao Hiệu Quả Là Gì ? Giải Pháp Nâng Cao Hiệu Quả Kinh Doanh

Scroll back to top

Java Swing là một bộ công cụ lập trình giao diện trong Java cung cấp vô số thành phần dùng để lập trình ứng dụng desktop được phát hành bởi Sun Microsystems.

Thư viện Swing được xây dựng dựa trên Java Abstract Widget Toolkit [AWT] cũng là một bộ công cụ lập trình giao diện cũ được phát triển trước đây. Chúng ta có thể sử dụng các thành phần giao diện như Button, TextBox etc mà không cần phải tạo lại chúng.

Sơ đồ cấu trúc Swing

Hình dưới đây mô tả các thành phần trong Java Swing

Tất cả các thành phần trong swing đại diện là JComponent có thể được thêm vào các container class.

Container class là gì?

Container class những class có thể chứa các thành phần khác như Button, TextButton, Checkbox etc. Vì vậy để khởi tạo một ứng dụng có giao diện đồ hoạ trong Swing chúng ta cần ít nhất một container object. 

Có 3 loại container chính sau:

  • Panel: Đây là một containter thuần tuý nhất dùng cho mục đích tổ chức các layout trên một màn hình chính.
  • Frame: Đây là một container với đầy đủ các chức năng, được xem như là một màn hình chính trong ứng dụng.
  • Dialog: Nó có thể được coi như một cửa sổ bật lên khi chúng ta cần hiển thị tin nhắn đến người dùng. Dialog không được xem là một màn hình chính trong ứng dụng giống như Frame.

GUI trong Java là gì

GUI viết tắt của Graphical User Interface cung cấp một bộ công cụ cho phép các lập trình viên có thể xây dựng các ứng dụng có giao diện đồ hoạ. Nó chủ yếu được làm bằng các thành phần đồ họa cơ bản như Button, Label, Windows, v.v. qua đó người dùng có thể tương tác với các ứng dụng. Swing GUI trong Java đóng một vai trò quan trọng trong việc xây dựng giao diện dễ dàng.

Đối tượng học Java Swing

Để làm các ứng dụng giao diện trong Java với Swing, trước tiên các bạn cần nắm vững kiến thức về Java cơ bản, Hướng đối tượng.

Ngoài ra để làm các ứng dụng có kết nối đến cơ sơ dữ liệu thì các bạn cần có kiến thức về JDBC, một API dùng để kết nối và thực thi các câu lệnh SQL xuống database. Ngoài ra các bạn cũng cần có kiến thức về SQL để viết các câu truy vấn hiệu quả.

Ví dụ cơ bản sử dụng Swing

Trong ví dụ dưới đây chúng ta sẽ sử dụng một số thành phần trong Java Swing để xây dựng một form đăng nhập đơn giản.

Ở đây các bạn có thể dùng bất trình IDE nào mà các bạn ưa thích để thực thi đoạn code dưới đây.

Mình dùng Intellij, nếu các bạn cũng thích hoặc mong muốn tìm hiểu thì có thể tìm hiểu tại đây.

package com.company; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.JTextField; public class Main{ public static void main[String[] args] { // Creating instance of JFrame JFrame frame = new JFrame["Dự án Java Swing Đầu Tiên"]; frame.setSize[350, 200]; frame.setDefaultCloseOperation[JFrame.EXIT_ON_CLOSE]; JPanel panel = new JPanel[]; // Thêm Panel vào Frame frame.add[panel]; placeComponents[panel]; // Hiển thị frame cho người dùng frame.setVisible[true]; } private static void placeComponents[JPanel panel] { panel.setLayout[null]; // Tạo một JLabel JLabel userLabel = new JLabel["Người dùng"]; /** * Chỉ định vị trí và kích thước của userLabel. * setBounds[x, y, width, height] * x,y là toạ đồ từ phía trên và bên trái của label * 2 tham số còn lại chỉ định chiều rộng và chiều cao của label */ userLabel.setBounds[10,20,80,25]; panel.add[userLabel]; // Tạo Inout cho người dùng nhập username JTextField userText = new JTextField[20]; userText.setBounds[100,20,165,25]; panel.add[userText]; // Tương tự taọ label và input cho người dùng nhập mật khẩu JLabel passwordLabel = new JLabel["Mật khẩu"]; passwordLabel.setBounds[10,50,80,25]; panel.add[passwordLabel]; JPasswordField passwordText = new JPasswordField[20]; passwordText.setBounds[100,50,165,25]; panel.add[passwordText]; // Tạo Button cho user chọn đăng nhập JButton loginButton = new JButton["Đăng nhập"]; loginButton.setBounds[10, 80, 100, 25]; panel.add[loginButton]; } }

Kết quả chúng ta sẽ có một mẫu đăng nhập người dùng như sau:

IDE hỗ trợ lập trình Java Swing 

Về nguyên tắc thì chúng ta có thể lập trình Java Swing trên bất kỳ IDE nào như Intellij, Eclipse, Netbeans. Tuy nhiên cá nhân mình nhận thấy Netbeans là một công cụ tuyệt vời để lập trình Java Swing.

Ngoài việc giao diện thân thiện, dễ sử dụng cho người mới bắt đầu, thì nó còn hỗ trợ kéo thả các thành phần giao diện trong Swing khá tiện lợi, chúng ta không cần code chay như ví dụ ở phía trên nữa. Chỉ cần kéo thả là code sẽ tự sinh, nhiệm vụ chính của chúng ta là xử lý các sự kiện khi người dùng tương tác các thành phần trên giao diện. 

Đây là trang chủ các bạn có thể vào để download cách nhanh chóng: //netbeans.apache.org/download/nb120/nb120.html

Ngoài ra netbeans cũng hỗ trợ cho nhiều hệ điều hành khác nhau như Linux, Macos, Windows.

Nguồn tham khảo

//www.guru99.com/java-swing-gui.html

//beginnersbook.com/2015/07/java-swing-tutorial/ 

Would love your thoughts, please comment.x

Video liên quan

Chủ Đề