Java Swing'de, JList
ve JComboBox
için verilerin en iyi yolu, veriler açısından senkronize edilmek, yani belirli bir zamanda aynı öğe listesine sahip olmak için nedir? Temel olarak, bir öğeye öğe eklerseniz (veya öğeleri kaldırırsam) diğeri değişikliği otomatik olarak yansıtmalıdır.Senkronize JList ve JComboBox?
ben aşağıdakileri yaparak denedim, ancak işe görünmüyor: her ikisi için çalışması gerekir böylece
JList list = new JList();
JComboBox comboBox = new JComboBox();
DefaultListModel listModel = new DefaultListModel();
// add items to listModel...
list.setModel(listModel);
comboBox.setModel(new DefaultComboBoxModel(listModel.toArray()));
API'ları temizledikten sonra bile bunu düşünmediğime inanamıyorum. Mükemmel çalıştı. Yardımın için çok teşekkürler! –
Öğeleri senkronize etmek için düzgün, ancak seçilen öğeyi senkronize etmenin basit bir yolu var mı? – HpTerm
@HpTerm: Bu kadar kolay değil. Liste ayrı bir ListSelectionModel ise Comboboxmodel seçimi kendisi yönetir. DefaultComboboxmodel ListSelectionModel uygulamasını alt sınıflara ayırabilir veya seçim durumunu senkronize etmek için dinleyicileri kullanabilirsiniz (ancak sonsuz döngüden kaçınmaya dikkat edin). (Ve seçim modunu "SINGLE_SELECTION" olarak ayarlamalısınız.) Yanıt için –