आपका प्रश्न कुछ अधूरा है, लेकिन मेरा अनुमान है कि आपका JComboBox String. यदि ऐसा है तो आपके लिए JComboBox (या बेहतर, इसके मॉडल) को एक कस्टम वर्ग की वस्तुओं के साथ पॉप्युलेट करना बेहतर होगा जो आपके ProductID को ProductName के साथ जोड़ती है। कम्बोबॉक्स को नाम प्रदर्शित करने के लिए, आपको या तो अपनी कक्षा को एक toString() विधि देनी होगी जो नाम लौटाए, या अपने कॉम्बो बॉक्स को एक सेल रेंडरर दें जो नाम दिखाता है।
संपादित करें
उदाहरण के लिए, एक वर्ग बनाएं, MyComboItem, इसे दो स्ट्रिंग फ़ील्ड दें जिन्हें आप अपने डेटाबेस से भरते हैं, इसे एक toString()
दें विधि जो उत्पाद का नाम दिखाती है, और अपने JComboBox को इस प्रकार के आइटम से भरें:
वर्ग MyComboItem { निजी स्ट्रिंग उत्पाद आईडी; निजी स्ट्रिंग उत्पादनाम; सार्वजनिक MyComboItem (स्ट्रिंग उत्पाद आईडी, स्ट्रिंग उत्पाद नाम) {this.productId =productId; यह.उत्पादनाम =उत्पादनाम; } सार्वजनिक स्ट्रिंग getProductId () {वापसी productId; } सार्वजनिक स्ट्रिंग getProductName() { उत्पाद का नाम लौटाएं; } @ ओवरराइड पब्लिक स्ट्रिंग टूस्ट्रिंग () {रिटर्न प्रोडक्टनाम; }}
2 संपादित करें
जिसे इस तरह इस्तेमाल किया जा सकता है:
आयात करें JScrollPane; पब्लिक क्लास ComboItemTest {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {DefaultComboBoxModel
3 संपादित करें
आपके मामले में, आप अपने मॉडल को ResultSet की जानकारी से भरेंगे। शायद कुछ ऐसा:
परिणामसेट परिणाम =कथन.executeQuery (); जबकि (परिणाम। अगला ()) {स्ट्रिंग उत्पादनाम =परिणाम। गेटस्ट्रिंग (1); स्ट्रिंग उत्पाद आईडी =result.getString(2); // ???? सुनिश्चित नहीं है कि यह मान्य है MyComboItem comboItem =new MyComboItem(productId, productName); comboModel.addElement(comboItem); }