में एक कस्टम ऑब्जेक्ट कैसे सेट करें मुझे इसे पहले बताना चाहिए, यह तालिका कक्ष को प्रस्तुत करने के बारे में नहीं है।एक जेटीबल पंक्ति
यहां टेबलमोडेल है कि मैं अपने डीबी में User
ऑब्जेक्ट के आधार पर 2 डी सरणी का उपयोग कर निर्माण कर रहा हूं।
List<User> userList = userManagerService.getAllUsers();
/* String[] col_user = {"Username", "Name", "Phone", .... } */
String[][] data = new String[userList.size()][col_user.length];
int i = 0;
for (User user : userList) {
String[] userdata = new String[col_user.length];
userdata[0] = user.getUserUsername();
userdata[1] = user.getUserName();
userdata[2] = user.getUserPhone();
userdata[3] = user.getUserNic();
userdata[4] = user.getUserAddress();
userdata[5] = user.getUserEmail();
data[i++] = userdata;
}
VstTableItemModel tiModel = new VstTableItemModel(data, col_user);
dataTable.setModel(tiModel);
मेरे समस्या मैं कैसे एक User
वस्तु वापस प्राप्त कर सकते, टेबल में चयनित पंक्ति का उपयोग कर रहा है। ध्यान दें कि मैं एक नया User
ऑब्जेक्ट नहीं बना सकता और इसे पंक्ति डेटा के साथ पॉप्युलेट कर सकता हूं। मुझे queried User
ऑब्जेक्ट (userList
में ऑब्जेक्ट) प्राप्त करना होगा। तो, क्या एक टेबल पंक्ति के साथ ऑब्जेक्ट सेट करने का उनका कोई तरीका है?
यहां मेरी VstTableItemModel
कक्षा है।
public class VstTableItemModel extends AbstractTableModel {
ArrayList<Object[]> data;
String[] header;
public VstTableItemModel(Object[][] obj, String[] header) {
this.header = header;
data = new ArrayList<Object[]>();
for (int i = 0; i < obj.length; ++i) {
data.add(obj[i]);
}
}
@Override
public int getRowCount() {
return data.size();
}
@Override
public int getColumnCount() {
return header.length;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
return data.get(rowIndex)[columnIndex];
}
@Override
public String getColumnName(int index) {
return header[index];
}
}
क्या आप 'VstTableItemModel' को संशोधित करने में सक्षम हैं? – MadProgrammer
हां। क्या मुझे इसे यहां पोस्ट करने की ज़रूरत है? – shan
नहीं, यह सिर्फ इसे आसान बना देगा;) – MadProgrammer