当前位置: 首页 > 知识库问答 >
问题:

在JList项目之间添加空格

欧阳何平
2023-03-14

如何在JList项目之间添加空格?有办法吗?

在这个图像上,白色是背景,黄色是JList的自定义DefaultListCellRenader,我希望每个JList项目都有一个像5像素的空间。

http://img819.imageshack.us/img819/5772/spacemd.png

dlm = new DefaultListModel<String>();
jlist = new JList<String>(dlm);
jlist.setFont(new Font("Calibri",Font.BOLD,16));
jlist.setCellRenderer(new Renderer());
jlist.setFixedCellWidth(100);
jlist.setBorder(new EmptyBorder(10,10, 10, 10));

共有2个答案

赫连彬炳
2023-03-14

尝试使用JList。setFixedCellHeight(someValue),通常也会这样做。

鲁浩言
2023-03-14

我没有看到您的渲染器,但是您可以将组件添加到面板。这个依赖于默认的FlowLayout的默认五个像素间隙,但是您也可以在面板上添加边框。

list.setCellRenderer(new DefaultListCellRenderer(){
    private static final int N = 2;

    @Override
    public Component getListCellRendererComponent(JList list, Object value,
            int index, boolean isSelected, boolean cellHasFocus) {
        Component c = super.getListCellRendererComponent(
            list, value, index, isSelected, cellHasFocus);
        c.setBackground(Color.yellow);
        JPanel p = new JPanel();
        p.add(c);
        return p;
    }
});
 类似资料:
  • 问题内容: 我有填充我的JList的方法,有没有一种方法可以添加JList中的每个项目? 问题答案: 您可以重写JList的getToolTipText(..)方法。 我相信您也可以使用自定义渲染器来调用setToolTipText(…)方法。

  • 问题内容: 嗨,我必须从一个JList中选择一个元素,将其从第一个元素中删除。我创建的方法仅插入一个元素,覆盖最后一个元素,并且不会从第一个JList中删除所选项目。这是代码: 第一名单 通过此方法填充: 第二个列表,我要在其中插入从第一个列表中删除的项目: 这是无效代码: 谢谢 问题答案: 问题是 您可能要添加一个元素并立即将其删除,因为添加和删除操作都在同一listModel上。 尝试

  • 问题内容: 所以,我想要的是选择一个项目时要运行的另一段代码。但是我的问题是,如何对特定项目实施? 这是我的代码: 我该怎么做才能添加到“车辆”,“自行车/自行车”,“船”,“房屋”,“企业”,“对象”,“工作”,“等级”和“许可证”项中? 问题答案: 如果您希望在选择更改时发生某些事情,则不希望使用MouseListener,而希望使用。它不仅是正确的抽象,而且请记住,不使用鼠标就可以更改选择。

  • 问题内容: 我在Eclipse工作区中有两个Java项目,并且我想在另一个项目中使用其中一个的类。 如何在它们之间添加参考?我正在寻找类似在C#中添加项目引用的内容。 问题答案: 假设您正在使用Eclipse … 右键单击项目- >属性-> Java构建路径->项目选项卡 …这将使您可以在问题构建路径中将所需的项目强加于项目中。

  • 我想在两个光滑的carousel项之间添加空间,但不想要带填充的空间,因为这会减少我的元素大小(我不想那样)。 null null 不知何故,我从两边都得到了空间,我正试图消除它。

  • 问题内容: 大家好。我正在制作一个词汇应用程序,需要在其中创建一个 (或ArrayList)。为此,我创建了以下代码(仅作为示例): 我还尝试了以下方法: 他们两个都将该项目添加到列表中,但是在调试时,我发现它的数组有12个对象,如下所示: 我的问题是我不能拥有这些空项目,因为此新列表是上的键,因此任何更改都将导致异常,因为该键将不存在。 使用调试器的列表(tempSOLUTION)详细信息的屏幕