Hướng dẫn thao tác với JTable trong Java | Lập trình Java Swing

Ngày đăng: 07/12/2018   -    Cập nhật: 14/04/2021
Tiếp tục bài viết hướng dẫn về lập trình Java Swing. Bài viết này mình sẽ hướng dẫn các bạn thao tác với JTable.


JTable trong Java Swing là một control cho phép ta hiển thị dữ liệu theo dạng bảng. JTable cho phép hiển thị một mảng các phần tử, hoặc một Vector.


 
Nên đọc thêm:
 
> Sinh viên nên học Java Ứng dụng hay Java Web?

> Tự học lập trình Java 
(Toàn tập)

 

Ta nên sử dụng Vector trong việc hiển thị dữ liệu trong JTable để có thể hiển thị được linh hoạt, vì khi sử dụng Jtable Vector, ta không cần phải khai báo trước kích thước của Vector.


Để hiển thị được dữ liệu lên JTable, ta cần nhớ sử dụng những Vector sau:


 
  • Một Vector (hoặc mảng một chiều) chứa các tiêu đề cột của bảng (thường là các chuỗi).
  • Một Vector (hoặc mảng hai chiều) chứa toàn bộ dữ liệu trong bảng.
  • Một số các Vector (hoặc các mảng một chiều) thể hiện một dòng dữ liệu trong bảng.


Trong hướng dẫn này, ta sẽ hiển thị dữ liệu từ một Vector lên bảng.

 

Bước 1: Tạo ứng dụng Java trên Netbeans



Mở một trình soạn thảo, ở đây ta sử dụng phần mềm NetBeans, sau đó tạo mới một Java Application. Đặt tên và chọn đường dẫn lưu ứng dụng.

 

Bước 2: Tạo giao diện bảng bằng Java Swing



Sau khi đã tạo ứng dụng, hãy tạo mới một form giao diện. Trong form hãy kéo thả JTable và các control khác để có giao diện như hình bên dưới.


Trong bài này, ta sẽ hiển thị danh sách dữ liệu cứng từ một Vector lên bảng, sau đó ta sẽ bắt key event, mouse event đối với bảng.


 
Tạo giao diện - Lập trình Java Swing

Tạo giao diện bằng Swing

 

Bước 3: Viết mã đổ dữ liệu vào jtable trong Java



Sau khi đã thiết kế xong giao diện, ta viết mã để có thể đổ danh sách dữ liệu lên bảng. Ta khai báo các Vector để chứa tiêu đề cột và dữ liệu trong bảng.

 
 
Viết mã đổ dữ liệu vào jtable trong Java

Viết mã đổ dữ liệu vào jtable trong Java
 
 
Sau đó ta viết mã để hiển thị danh sách các dòng dữ liệu lên bảng. Ở đây mỗi dòng dữ liệu được thể hiện thông qua một Vector. Ta sẽ tạo 4 Vector, tương ứng với 4 dòng dữ liệu trên bảng.


Sau khi đã tạo xong các Vector, ta gọi method setModel() để có thể làm tươi (refresh) dữ liệu trên bảng.

 
Viết mã đổ dữ liệu lên bảng -2

Tạo vector cho dòng dữ liệu 1

Viết mã đổ dữ liệu lên bảng - 3

Tạo vector cho dòng dữ liệu 2, 3

Thao tác với jtable trong Java

Tạo vector cho dòng dữ liệu 4

 

Bước 4: Thực thi chương trình vừa tạo để xem kết quả hiển thị dữ liệu trên Jtable.



Sau khi đã viết mã xong, hãy thực thi chương trình, ta có thể thấy dữ liệu đã được hiển thị lên trên bảng như hình bên dưới.


Ta tạo 4 Vector chứa dữ liệu của 4 dòng, khi hiển thị trên bảng cũng có 4 dòng như trên.


Chú ý: JTable không chứa dữ liệu, mà Jtable hiển thị dữ liệu. Toàn bộ dữ liệu được cung cấp bởi Vector.


 
Thao tác với jtable trong Java 2

Thực thi chương trình xem kết quả của các vector vừa tạo

 

Bước 5: Xử lý event cho JTable



Sau khi đã Load dữ liệu lên JTable, ta hãy viết mã Java để xử lý các event cho bảng.


Đầu tiên ta viết một method với tên là displayDetails(). Method này sẽ nhận một tham số có chứa chỉ số của dòng được chọn trong bảng, sau đó ta sẽ lấy ra phần tử tương ứng trong Vector (theo chỉ số).


Tiếp theo, method này sẽ hiển thị thông tin về bản ghi được chọn lên giao diện
.

 

Xử lý Event cho JTable - Lập trình Java Swing

Xử lý Event cho JTable trong Java
 

Sau đó, để xử lý event cho bảng, ta click phải chuột lên bảng, chọn Events, sau đó chọn những sự kiện cần xử lý. Ở đây ta sẽ xử lý hai sự kiện với mousekey.
 

Xử lý Event mouse và key cho JTable - Lập trình Java Swing

Xử lý Event mouse và key cho JTable
 

Đầu tiên ta xử lý MouseClick event. Đây là một event sẽ được phát sinh mỗi khi người dùng click chọn một dòng trong bảng.


Lúc đó chương trình sẽ hiển thị thông tin về bản ghi bên dưới.
Xử lý Event MouseClick - Lập trình Java Swing

Xử lý Event MouseClick


Sau đó ta xử lý event KeyRelease. Đây là sự kiện xảy ra mỗi khi người dùng nhả phím.


Ở đây ta xử lý mỗi khi người dùng nhấn phím Up hoặc Down thì chương trình sẽ hiển thị bản ghi tương ứng bên form dưới.

 
 
Xử lý Event KeyRelease trong Lập trình Java Swing

Xử lý Event KeyRelease trong Lập trình Java Swing
 

Bước 6: Thực thi chương trình Java Swing và xem kết quả



Sau khi đã viết mã xong, hãy thực thi chương trình và xem kết quả. Ta có thể thấy chương trình đã hoạt động đúng như ta viết mã.

 

Thực thi chương trình và xem kết quả cuối cùng - Lập trình Java Swing

Thực thi chương trình và xem kết quả cuối cùng

 

Bạn đã hiểu thao tác với JTable chưa?



Như vậy là mình đã hướng dẫn xong các bạn thao tác với JTable trong Java. Đây là bài học cơ bản trong Lập trình Java Swing.


Hãy thử làm lại một vài lần để thực sự thuần thục nhé.


Đây chỉ là một phần nhỏ trong lập trình Java đặc biệt là Lập trình Java Ứng dụng.



> Nếu bạn muốn học lập trình Java toàn diện thì có thể tham gia ngay KHÓA HỌC JAVA FULL STACK này. Khóa học này sẽ dạy rất kỹ càng về Java, Java Web và cả Java Web Frameworks


---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0383.180086
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
 
#niit #icthanoi #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #java #php #python

Bình luận Facebook
Khóa học liên quan đến bài viết

KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS

56 giờ
Học Lập trình Front end hiện đại với ReactJS. Học làm chủ HTML, CSS, JS và thư viện JavaScript phổ biến nhất hiện nay. Sẵn sàng đi thực tập / đi làm ngay sau khóa học.

Khóa học PHP Full stack [2023] cho người mới bắt đầu

96 giờ
Khóa học Lập trình PHP Full stack, phiên bản cập nhật lần thứ 8. Dạy Lập trình PHP bài bản từ Front end đến Back end + Laravel. Hướng dẫn làm 2 Dự Án Web lớn

KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG

50 giờ
Khóa học giúp học viên sử dụng thành thạo ngôn ngữ Lập trình Python (3x). Hiểu và phát triển được Ứng dụng Web với Django Framework. Học thực hành với Giảng viên cao cấp.

Khóa học Java Full stack (IJFD)

104 giờ
Học lập trình Java Fullstack với khóa học được xây dựng theo lộ trình bài bản, từ JAVA CƠ BẢN đến JAVA WEB và nâng cao về JAVA FRAMEWORK như: Spring Boot, Hibernate
Mục lục
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!