JTable में पंक्ति कैसे जोड़ें?


94

क्या आप जानते हैं कि मैं एक नई पंक्ति कैसे जोड़ सकता हूँ jTable?

जवाबों:


171

TableModelपीछे सभी टेबल के पीछे डेटा के JTable हैंडल। तालिका से पंक्तियों को जोड़ने और हटाने के लिए, आपको एक का उपयोग करने की आवश्यकता हैDefaultTableModel

इस मॉडल के साथ तालिका बनाने के लिए:

JTable table = new JTable(new DefaultTableModel(new Object[]{"Column1", "Column2"}));

एक पंक्ति जोड़ने के लिए:

DefaultTableModel model = (DefaultTableModel) table.getModel();
model.addRow(new Object[]{"Column 1", "Column 2", "Column 3"});

आप इस विधि से पंक्तियों को भी हटा सकते हैं।

DefaultTableModel पर पूर्ण विवरण यहां पाया जा सकता है


2
+1 यह एक अच्छा जवाब है; हालाँकि, ध्यान दें कि DefaultTableModel केवल कई मॉडलों में से एक है। हालाँकि, इसका उपयोग करना सबसे आसान है और मैं आपको इससे चिपके रहने की सलाह दूंगा जब तक आपको दूसरे का उपयोग न करना पड़े।
चेसोफर्नेड

2
आपके कोड की पहली पंक्ति के साथ तालिका बनाने पर, मुझे एक त्रुटि मिलती है "कंस्ट्रक्टर DefaultTableModel (ऑब्जेक्ट []) अपरिभाषित है"
ThisClark

4
@ThisClark: उस DefaultTableModel कंस्ट्रक्टर के लिए, आपको पंक्ति जोड़ने की भी आवश्यकता है, जैसे:JTable table = new JTable(new DefaultTableModel(new Object[]{"Column1", "Column2"}, 20));
प्लेनस फ्रेंकी

57

उपयोग:

DefaultTableModel model = new DefaultTableModel(); 
JTable table = new JTable(model); 

// Create a couple of columns 
model.addColumn("Col1"); 
model.addColumn("Col2"); 

// Append a row 
model.addRow(new Object[]{"v1", "v2"});

12

पंक्ति को जोड़ने के लिएJTable , इनमें से एक तरीका है:

1) DefaultTableModel का उपयोग करके तालिका बनाएँ:

        DefaultTableModel model = new DefaultTableModel();
        model.addColumn("Code");
        model.addColumn("Name");
        model.addColumn("Quantity");
        model.addColumn("Unit Price");
        model.addColumn("Price");
        JTable table = new JTable(model);

2) पंक्ति जोड़ने के लिए:

        DefaultTableModel model = (DefaultTableModel) table.getModel();
        model.addRow(new Object[]{"Column 1", "Column 2", "Column 3","Column 4","Column 5"});

9

उपयोग

    DefaultTableModel model = (DefaultTableModel) MyJTable.getModel();

    Vector row = new Vector();
    row.add("Enter data to column 1");
    row.add("Enter data to column 2");
    row.add("Enter data to column 3");
    model.addRow(row);

के साथ मॉडल प्राप्त करें DefaultTableModel modelName = (DefaultTableModel) JTabelName.getModel();

एक वेक्टर बनाएं Vector vectorName = new Vector();

इतने में जोड़ें row.add जोड़ो के रूप में

जोड़ने के लिए जल्द ही इसके साथ जोड़ें modelName.addRow(Vector name);


2

पूर्णता के लिए, पहले सुनिश्चित करें कि आपके पास सही आयात है ताकि आप addRowफ़ंक्शन का उपयोग कर सकें :

import javax.swing.table.*;

मान लें कि आपका jTable पहले से ही बना है, आप आगे बढ़ सकते हैं और अपनी स्वयं की पंक्ति विधि बना सकते हैं, जो आपके लिए आवश्यक मापदंडों को स्वीकार करेगी:

public void yourAddRow(String str1, String str2, String str3){
  DefaultTableModel yourModel = (DefaultTableModel) yourJTable.getModel();
  yourModel.addRow(new Object[]{str1, str2, str3});
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.