मैं एक जेटीबल से कुछ पंक्तियों को हटाना चाहता हूं। मैं यह कैसे कर सकता हूं?JTable से एक पंक्ति को कैसे निकालें?
उत्तर
एक जेटीबल आमतौर पर एक एमवीसी कार्यान्वयन का दृश्य भाग बनाता है। आप अपने मॉडल से पंक्तियों को हटाना चाहते हैं। जेटीबल, जो इन परिवर्तनों के लिए सुनना चाहिए, इस हटाने को प्रतिबिंबित करने के लिए अद्यतन होगा। इसलिए आपको JTable पर विधि के रूप में RemoveRow() या समान नहीं मिलेगा।
thanx, लेकिन मैं जानना चाहता हूं कि पंक्तियों को कैसे निकालें टेबल मॉडल, मुझे कोई विधि नहीं मिल रही है। –
इस तरह की चीजों के माध्यम से पढ़ लें: http://java.sun.com/docs/books/tutorial/uiswing/components/table.html – dave
संक्षेप में, आप एक कस्टम टेबल मॉडल बनाते हैं। जेटीबल पंक्तियों को स्टोर नहीं करता है, यह एक टेबल मॉडल में प्रतिनिधि करता है। यदि आप चाहें तो आप सारणीटेबल मॉडल से उपclass कर सकते हैं। हर बार जब आप पंक्तियां हटाते हैं तो FireTableRowsDeleted() को कॉल करें। मदद के लिए – dave
एक साधारण मॉडल है कि आप उपयोग कर सकते हैं के लिए DefaultTableModel पर देखो:
http://java.sun.com/javase/6/docs/api/javax/swing/table/DefaultTableModel.html
यह AbstractTableModel फैली हुई है, लेकिन बुनियादी उद्देश्यों के लिए पर्याप्त होना चाहिए। आप हमेशा सारणीटेबल मॉडल का विस्तार कर सकते हैं और अपना खुद का बना सकते हैं। सुनिश्चित करें कि आप इसे JTable पर भी सेट करें।
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#data
एक JTable से एक पंक्ति को निकालने के लिए, आप को दूर करने की जरूरत है:
http://java.sun.com/javase/6/docs/api/javax/swing/table/AbstractTableModel.html
तालिका मॉडल के साथ JTable का उपयोग कर के बारे में अधिक जानकारी के लिए बुनियादी सूर्य ट्यूटोरियल पर देखो अंतर्निहित TableModel से लक्ष्य पंक्ति। हैं, उदाहरण के लिए, अपने TableModel DefaultTableModel का एक उदाहरण है, तो आप निम्न करके एक पंक्ति निकाल सकते हैं:
((DefaultTableModel)myJTable.getModel()).removeRow(rowToRemove);
thanx, लेकिन मैंने इस विधि का उपयोग किया है और यह काम नहीं कर रहा है। असल में मेरा जेटेबल स्थानटेबल मॉडल (स्वयं बनाया गया) का उपयोग कर सार सारणी मॉडल का विस्तार कर रहा है, इसलिए जब मैं removeRow (i) विधि का उपयोग कर रहा हूं, तो यह त्रुटि को हटा सकता है "हटाने का प्रयास करें()" .. मैं किस विकल्प का उपयोग करूंगा .. –
ठीक है अगर आप अपना खुद का कस्टम टेबल मॉडल बनाया है, तो आप अपनी खुद की "removeRow" विधि बनाने के लिए ज़िम्मेदार हैं। यह कैसे किया जाता है यह देखने के लिए DefaultTableModel के स्रोत कोड को देखें। EasyTableModel का उपयोग करना आसान समाधान है। आपको लगता है कि आपको कस्टम टेबल मॉडल बनाने की आवश्यकता क्यों है? जब तक आप मॉडल का उपयोग करने की मूल बातें समझ नहीं लेते हैं, तब तक दिए गए डिफ़ॉल्ट का उपयोग करें। – camickr
एक JTable में फ़िल्टर लागू करने का सही तरीका RowFilter इंटरफ़ेस एक TableRowSorter को जोड़ा गया के माध्यम से है। इस इंटरफ़ेस का उपयोग करके, मॉडल के दृश्य को अंतर्निहित मॉडल को बदले बिना बदला जा सकता है। यह रणनीति मॉडल-व्यू-कंट्रोलर प्रतिमान को बरकरार रखती है, जबकि मॉडल से छिपी हुई पंक्तियों को हटाने से आप चिंताओं को अलग करने में भ्रमित होकर प्रतिमान को तोड़ देते हैं।
यदि आपको एक साधारण कामकाजी समाधान की आवश्यकता है, तो DefaultTableModel का उपयोग करने का प्रयास करें।
यदि आपने अपना खुद का टेबल मॉडल बनाया है, जो सारटेबल मॉडेल को बढ़ाता है, तो आपको removeRow() विधि को भी लागू करना चाहिए। सटीक कार्यान्वयन अंतर्निहित संरचना पर निर्भर करता है, जिसे आपने डेटा स्टोर करने के लिए उपयोग किया है।
उदाहरण के लिए, यदि आप वेक्टर का इस्तेमाल किया है, तो यह कुछ इस तरह हो सकता है:
public class SimpleTableModel extends AbstractTableModel {
private Vector<String> columnNames = new Vector<String>();
// Each value in the vector is a row; String[] - row data;
private Vector<String[]> data = new Vector<String[]>();
...
public String getValueAt(int row, int col) {
return data.get(row)[col];
}
...
public void removeRow(int row) {
data.removeElementAt(row);
}
}
आप का इस्तेमाल किया है, तो सूची है, तो यह बहुत ज्यादा एक जैसे होगा:
// Each item in the list is a row; String[] - row data;
List<String[]> arr = new ArrayList<String[]>();
public void removeRow(int row) {
data.remove(row);
}
HashMap :
//Integer - row number; String[] - row data;
HashMap<Integer, String[]> data = new HashMap<Integer, String[]>();
public void removeRow(Integer row) {
data.remove(row);
}
और तुम इस एक
तरह सरणियों उपयोग कर रहे हैंString[][] data = { { "a", "b" }, { "c", "d" } };
तो आप भाग्य से बाहर हैं, क्योंकि गतिशील रूप से सरणी से तत्वों को हटाने का कोई तरीका नहीं है। आप अलग-अलग झंडे को संग्रहीत करके सरणी का उपयोग करने की कोशिश कर सकते हैं जो बताते हैं कि कौन सी पंक्तियां हटा दी गई हैं और जो नहीं हैं, या कुछ अन्य विचलित तरीके से, लेकिन मैं इसके खिलाफ सलाह दूंगा ... इससे अनावश्यक जटिलता लागू होगी, और वास्तव में केवल होगा एक और बनाकर एक समस्या को हल करना। here को समाप्त करने के लिए यह एक निश्चित-अग्नि तरीका है। इसके बजाय अपने टेबल डेटा को स्टोर करने के उपर्युक्त तरीकों में से एक आज़माएं।
यह कैसे काम करता की बेहतर समझ है, और क्या अपना स्वयं का मॉडल ठीक से काम करने के लिए क्या करने के लिए के लिए, मैं आप Java Tutorial, DefaultTableModel API का उल्लेख करने के दृढ़ता से की सलाह और यह source code है।
mmm बहुत सरल लोग
for(int i = model.getRowCount() - 1; i >= 0; i--)
{
model.removeRow(i);
}
सुबह में लाखों सूचनाओं की तरह कुछ नहीं ;-) – greenoldman
- 1. जावा: कैसे एक JTable में केवल एक ही सेल और एक JTable में नहीं पूरी पंक्ति
- 2. JTable
- 3. कैसे एक JTable जो एक jScrollPane
- 4. XML युक्त स्ट्रिंग से पहली पंक्ति को कैसे निकालें?
- 5. JTable
- 6. JTable - चयनित पंक्ति क्लिक करें ईवेंट
- 7. JTable
- 8. एक jtable
- 9. एक JTable
- 10. प्रोग्रामेटिक रूप से JTable
- 11. MouseEvent से JTable में पंक्ति सूचकांक को विश्वसनीय रूप से कैसे प्राप्त करें?
- 12. अजीब प्रत्येक पंक्ति से कई समूहों को निकालें
- 13. JTable
- 14. JTable
- 15. स्ट्रिंग से रिक्त लाइनों को निकालें, लेकिन प्रत्येक पंक्ति
- 16. शीट संगीत से प्रत्येक पंक्ति पर उपायों को निकालें
- 17. JTable (स्विंग) में वर्तमान में चयनित पंक्ति को प्रोग्रामेटिक रूप से अचयनित कैसे करें?
- 18. JTable
- 19. JTable
- 20. JTable
- 21. jTable -Java
- 22. फ़ेडऑट और निकालें तालिका पंक्ति
- 23. JTable
- 24. एक (क्रमबद्ध) JTable
- 25. jtable
- 26. स्वचालित रूप से JTable
- 27. एक JTable सेल
- 28. JTable JPopupMenu
- 29. मैं JTable
- 30. ऑटो JTable
टिप है: अगर तुम समझा क्या आप पहले से ही की कोशिश की है, और क्या ऑनलाइन ट्यूटोरियल आप पढ़ा है, लोगों को और अधिक मदद करने के लिए इच्छुक हो जाएगा। या कुछ नमूना कोड दें और हमें बताएं कि कौन सा काम काम नहीं करता है। यदि आपने पहले से नहीं किया है तो इसे पढ़ें: सहायता के लिए http://java.sun.com/docs/books/tutorial/uiswing/components/table.html –