मेरा अंतिम लक्ष्य एक जेएलिस्ट होना है जो रनटाइम पर अपनी सामग्री को रीफ्रेश करता है, और मुझे एक समाधान मिला है जो इस पोस्ट से here on SO पर काम करता है, हालांकि मैं उत्सुक हूं मेरा मूल विचार नहीं था।एक वर्ग के साथ JList .setModel() विधि का प्रयोग
अब के रूप में, मैं इस सेटअप की तरह कुछ है और यह काम करता है:
DefaultListModel default = new DefaultListModel();
for(int i = 0; i < array.size() ; ++i){
test.addElement(array.get(i));
}
list.setModel(default);
नीचे अपने मूल योजना थी। मैं एक वर्ग चाहता था जिसने सूची मॉडल को एक तर्क के रूप में पारित किया, उम्मीद है कि यह जेएलिस्ट को ताज़ा करेगी।
SomeClass test = new SomeClass(); //Implements ListModel
list.setModel(test);
या
SomeClass test = new SomeClass(); //Implements ListModel
list = new JList(test);
इन काम है, जो मुझे confuses की न तो। क्या ये अंतिम दो विधियां कुछ काम कर सकती हैं, कोड इतना साफ है।
धन्यवाद।
इस वर्ग के उदाहरण के बजाय कक्षा सूची मॉडल पास करना एक कंपिलेटर त्रुटि है। आप भ्रमित क्यों हो रहे हैं? – Istao
मुझे लगता है कि मेरा कोड डेमो थोड़ा भ्रामक माफी है। जो कुछ मैं कर रहा था, मैं इसे और स्पष्ट करने के लिए कोड बदल दूंगा। – Koop
उन अंतिम दो तरीकों का काम क्यों नहीं करते? कृपया जो त्रुटि आप देख रहे हैं उसे प्रदान करें। यदि 'SomeClass'' ListModel' बढ़ाता है, तो उन दोनों विधियों का काम होगा। –