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:
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 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
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.
Tạo vector cho dòng dữ liệu 1
Tạo vector cho dòng dữ liệu 2, 3
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.
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 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 mouse
và key
.
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
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
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
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