Không giống như hầu hết các cấu trúc dữ liệu, JTable
không có phương thức isEmpty()
. Vậy làm thế nào chúng ta có thể biết nếu một JTable
cho trước không chứa bất kỳ giá trị nào?Làm cách nào để biết liệu JTable có trống không?
Trả lời
table.getRowCount();
table.getColumnCount();
Nếu một trong hai là 0, thì không có dữ liệu.
Điều này sẽ trả lại số hàng thực tế, bất kể bộ lọc nào trên bảng.
int count= jTable.getModel().getRowCount();
jTable.getRowCount()
sẽ chỉ trả về số hàng có thể nhìn thấy. Vì vậy, để kiểm tra isEmpty() sau đó nó tốt hơn để sử dụng getRowCount()
trên mô hình.
public static boolean isEmpty(JTable jTable) {
if (jTable != null && jTable.getModel() != null) {
return jTable.getModel().getRowCount()<=0?true:false;
}
return false;
}
bạn có một số cố định các cột .. giả sử ba
public int Actualrows(DefaultTableModel m) {
int row = 0;
int i = 0;
for (i = 0; i < m.getRowCount(); ++i) {
try {
if (!(m.getValueAt(i, 0).equals("")) && !(m.getValueAt(i, 1).equals(""))
&& !(m.getValueAt(i, 2).equals(""))) {
row++;
}
} catch (NullPointerException e) {
continue;
}
}
return row;
}
nếu giá trị trả về bằng 0 của nó hoàn toàn một bảng trống
Trên thực tế, không có phương pháp cho việc học nó là bạn của tôi. Nhưng bản thân tôi, sử dụng một phương pháp để tìm hiểu xem nó có sản phẩm nào hay không.
Lúc đầu, trong khi bạn tạo JTable
đặt số hàng mặc định 0
. Khi bạn muốn sử dụng JTable
, hãy tạo JTable
với dữ liệu trả về từ cơ sở dữ liệu. Vì vậy, nếu không có data.getRowCount()
sẽ trả lại 0
một lần nữa. Và như vậy, bạn sẽ biết liệu JTable
có trống hay không.
try (ResultSet rs = st.executeQuery(query)) {
int colcount = rs.getMetaData().getColumnCount();//get's the row count in the database
DefaultTableModel tm = new DefaultTableModel();
for (int i = 1; i <= colcount; i++) {
tm.addColumn(rs.getMetaData().getColumnName(i));
}
while (rs.next()) {
Object[] row = new Object[colcount];
for (int i = 1; i <= colcount; i++) {
row[i - 1] = rs.getObject(i);
}
tm.addRow(row);
}
jTblAd.setModel(tm);
conn.close();
}
Cuối cùng tôi muốn nói rằng nếu JTable có đầu, ví dụ: Tên-Họ-Age vv, table.getRowCount(); table.getColumnCount();
không làm việc vì người đứng đầu của JTable. Vì vậy, ý kiến của tôi là nếu chúng ta không thể kiểm tra jTable, hãy kiểm tra Dataset được viết trong bảng.
(1-) mã này cho thấy cách thêm dữ liệu từ một ResultSet vào một mô hình bảng. Câu hỏi đặt ra là biết khi nào một "bảng" trống. Dữ liệu có khả năng đến từ đâu là không liên quan. – camickr
Khi tôi lần đầu tiên nghĩ là "Không có phương pháp xác định cho nó, phải không?". Tôi chỉ muốn hiển thị những gì tôi đang làm cho dù jTable có sản phẩm nào hay không. Một cách hợp lý, nếu không có dữ liệu trả về từ cơ sở dữ liệu, jTable sẽ trống rỗng đúng không? Tôi nghĩ cách này giải quyết vấn đề của tôi và trong các dự án của tôi nó hoạt động. – Babafingo
Nó có thể giải quyết vấn đề của bạn, nhưng bạn không hỏi câu hỏi và bạn trả lời là tắt chủ đề. Cơ sở dữ liệu không liên quan. Câu hỏi là về dữ liệu trong một JTable, không phải về việc liệu một truy vấn cơ sở dữ liệu trả về bất kỳ dữ liệu nào. – camickr
- 1. Làm cách nào để biết đầu ra của lệnh "tìm" có trống không?
- 2. Làm cách nào để biết NSManagedObject có được lưu không?
- 3. Làm cách nào để biết liệu menu thả xuống có các tùy chọn để chọn không?
- 4. Làm cách nào để biết OpenMP có hoạt động không?
- 5. làm cách nào để kiểm tra xem trường nhập liệu có trống không
- 6. Cách để biết liệu TPL Dataflow Block có bận không?
- 7. Làm cách nào để biết liệu một quá trình MySQL có bị kẹt không?
- 8. Làm cách nào để biết liệu một phần tử có khớp với bộ chọn không?
- 9. Làm cách nào để biết liệu chương trình của tôi có bật ARC hay không?
- 10. Làm cách nào để biết liệu QMutex có bị khóa hay không?
- 11. Làm cách nào để biết liệu thống kê của bảng Postgres có được cập nhật không?
- 12. Làm cách nào để biết liệu bash kill có sử dụng pid hay jobspec không?
- 13. Làm cách nào để biết liệu SQLite có được cài đặt đúng trên Linux không?
- 14. Làm cách nào để biết liệu một khách hàng web có đang chặn quảng cáo không?
- 15. Làm cách nào để bạn biết liệu tính năng nén HTTP có hoạt động không?
- 16. làm cách nào để biết liệu cột có phải là khóa chính sử dụng mysqli không?
- 17. Làm cách nào để biết liệu một phần tử có được hiển thị hay không?
- 18. Làm cách nào để biết liệu cập nhật CHẾ ĐỘ HOẠT ĐỘNG có đang chạy không?
- 19. Làm cách nào để biết liệu hWnd đã cho có còn hợp lệ không?
- 20. Làm cách nào để biết liệu IQueryable có phải là IOrderedQueryable không?
- 21. Làm cách nào để biết liệu .NET 3.5 SP1 có được cài đặt không?
- 22. Làm cách nào để biết liệu "hội đồng" có thực sự thay đổi không?
- 23. Làm cách nào để biết liệu ai đó có giả mạo một loại tệp không? (PHP)
- 24. Tôi làm cách nào để biết liệu một người viết luồng có được đóng không?
- 25. Làm cách nào để biết liệu máy in có in được không?
- 26. Làm cách nào để biết liệu việc thu thập Luồng Java (Collectors.toMap) có song song không?
- 27. Làm cách nào để biết liệu UIView có hiển thị và trên màn hình không?
- 28. Làm cách nào để biết liệu tắt máy hiện có đang diễn ra không?
- 29. Làm cách nào để biết liệu NSURLResponse có đến từ bộ nhớ cache không?
- 30. Làm cách nào để biết liệu luồng có bị đóng không?
Về mặt kỹ thuật, bạn nên đặt nó là "sau đó không có dữ liệu ** để hiển thị **". Hoặc có thể trả về 0, nhưng điều đó không có nghĩa là mô hình cơ bản không chứa bất kỳ dữ liệu nào. –