Реализация пользовательской модели комбинированного списка не смогла переопределить некоторые методы

1

Я пытаюсь реализовать пользовательскую модель combobox с использованием интерфейса MutableComboBoxModel который, я надеюсь, MutableComboBoxModel динамические данные во время выполнения, особенно запрашиваемые из базы данных. Но я не смог переопределить некоторые из методов. Может ли кто-нибудь помочь преодолеть или предложить лучший способ, которым я могу достичь своей цели?

package PiggeryManagementSystem;

import java.util.ArrayList;
import javax.swing.MutableComboBoxModel;
import javax.swing.event.ListDataListener;

/**
 * @author Stanchart
 */
public class MyComboBoxModel  implements MutableComboBoxModel {

    ArrayList <String> columns = new ArrayList();

    public MyComboBoxModel( ArrayList<String> c) {
        this.columns = c;
    }

    @Override
    public void addElement(Object item) {

    }

    @Override
    public void removeElement(Object obj) {

    }

    @Override
    public void insertElementAt(Object item, int index) {
        columns.get(index);
    }

    @Override
    public void removeElementAt(int index) {

    }

    @Override
    public void setSelectedItem(Object anItem) {

    }

    @Override
    public Object getSelectedItem() {
        return columns.getClass();
    }

    @Override
    public int getSize() {
        return columns.size();
    }

    @Override
    public Object getElementAt(int index) {
        return columns.get(index);
    }

    @Override
    public void addListDataListener(ListDataListener l) {

    }

    @Override
    public void removeListDataListener(ListDataListener l) {

    }

}
Теги:
swing
jcombobox
swingx

1 ответ

0
Лучший ответ

Мне удалось это понять. Огромное спасибо.

package PiggeryManagementSystem;

import java.util.ArrayList;
import javax.swing.MutableComboBoxModel;
import javax.swing.event.ListDataListener;

/**
 * @author Stanchart
 */
public class MyComboBoxModel  implements MutableComboBoxModel {

    private Object selectedItem;     
    ArrayList <String> columns = new ArrayList();

    public MyComboBoxModel( ArrayList<String> c) {
       this.columns = c;
    }

    @Override
    public void addElement(Object item) {
        columns.add(item.toString());
    }

    @Override
    public void removeElement(Object obj) {
        columns.remove(obj.toString());
    }

    @Override
    public void insertElementAt(Object item, int index) {
        columns.get(index);
    }

    @Override
    public void removeElementAt(int index) {
        columns.remove(index);
    }

    @Override
    public void setSelectedItem(Object anItem) {
        selectedItem = anItem;   
    }

    @Override
    public Object getSelectedItem() {
        return selectedItem;
    }

    @Override
    public int getSize() {
        return columns.size();
    }

    @Override
    public Object getElementAt(int index) {
        return columns.get(index);
    }

    @Override
    public void addListDataListener(ListDataListener l) {

    }

    @Override
    public void removeListDataListener(ListDataListener l) {

    }    
}
  • 0
    Все еще отсутствует добавить / удалить ListDataListeners. Класс EventListenerList предназначен для хранения списка слушателей разных типов и поможет вам реализовать эти методы. Также обратите внимание, что свойство columns должно быть private и, вероятно, final .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню