java - 实现自定义组合框模型未能覆盖某些方法

标签 java swing jcombobox swingx comboboxmodel

我正在尝试使用 MutableComboBoxModel 接口(interface)实现自定义组合框模型,我希望在运行时填充动态数据,特别是从数据库查询的数据。但我未能覆盖某些方法。有人可以帮助我覆盖或提出更好的方法来实现我的目标吗?

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) {

    }

}

最佳答案

我已经设法弄清楚了。非常感谢。

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) {

    }    
}

关于java - 实现自定义组合框模型未能覆盖某些方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27722642/

相关文章:

java - jtable 来自 sql 数据库,带有搜索/比较查询

java - 使用字符串数组初始化 JComboBox 对象

java - JComboBox 未返回预期结果

java - 使用 JComboBox 更新 JDialog 中的 JPanel 时出现问题

java - 从 SQLite 数据库删除数据时,应用程序需要重新启动才能实际删除

java - session 回滚、撤销和死信处理程序

JavaCard监控文件夹

java - 将 JScrollpane 添加到包含多个 JPanel 的 JPanel

Java jLabel 位于另一个监听器之上

java - LWJGL显示和java swing