作为一个 JCombobox ListCellRenderer,我有这样一个类:
class ZComboBoxRenderer extends JPanel implements ListCellRenderer{
private ZGrid grid;
public ZComboBoxRenderer(ZGrid grid) {
setLayout(new BorderLayout());
this.grid = grid;
add(new JScrollPane(grid), BorderLayout.CENTER);
}
public ZGrid getGrid(){
return grid;
}
@Override
public Component getListCellRendererComponent(JList list, Object value,
int index, boolean isSelected, boolean cellHasFocus) {
grid.fetchSQL();
return this;
}
}
ZGrid
在这里,扩展JTable
。
作为一个ListCellRendererComponent
,我ZGrid
向JCombobox
. 问题是,在它的列表中,这个 ZGrid 正在正确绘制。但它也在 JCombobox 的编辑器中绘制。我上传了一张图片来更好地展示这一点。
有没有办法将编辑器与列表分开?