我有一个在单击按钮时执行的函数。假设有一个循环将1加到10到JList。我将该数据添加到DefaultListModel。它完美地工作并且数字被添加。然后我在循环中添加了一个Thread.sleep(1000)。但是输出是不同的。我想每秒添加1个元素。但现在它等待10秒,并在第10秒结束时将所有1加到10。我哪里错了吗?ListprocessList=listNumbers.getSelectedValuesList();DefaultListModelresultList=newDefaultListModel();listResult.setModel(resultList);fo
在Java中,如何获得具有交替颜色的JList?有示例代码吗? 最佳答案 要自定义JList单元格的外观,您需要编写自己的ListCellRenderer实现.类的示例实现可能如下所示:(草图,未测试)publicclassMyListCellThingextendsJLabelimplementsListCellRenderer{publicMyListCellThing(){setOpaque(true);}publicComponentgetListCellRendererComponent(JListlist,Objectv
我正在尝试从表中获取项目并将它们显示到JList中。我运行代码,JList中没有显示任何内容,也没有错误。我调试了代码,它一直计数到表项长度。已关注this回答。staticConnectionconn=newDBConnection().connect();privateJListlistDepartments=null;publicAddDepartment(){listDepartments=newJList();listDepartments.setBounds(189,33,1,1);contentPane.add(listDepartments);update_depart
如果单击JList上的选定索引,我希望它取消选择。换句话说,单击索引实际上会切换它们的选择。看起来不支持,所以我尝试了list.addMouseListener(newMouseAdapter(){publicvoidmousePressed(MouseEventevt){java.awt.Pointpoint=evt.getPoint();intindex=list.locationToIndex(point);if(list.isSelectedIndex(index))list.removeSelectionInterval(index,index);}});这里的问题是在JLi
“有什么方法可以防止JList在用户单击列表下方的最后一个元素时选择最后一个元素吗?”这是有人问的问题here我有同样的问题。那个人找到了一个马马虎虎的解决方案(通过覆盖processMouseEvent()),但我想知道是否有更好/更优雅的方法来做到这一点。[编辑]好的,更详细一点。如果您有一个JList并且有一些空间未被任何单元格/元素占用,您单击该空间然后JList中的最后一个元素被选中。对于一个真实的例子,试试这个JListSwingTutorialexample,单击空白区域可以看到Rollo已被选中。 最佳答案 参见ht
我遇到了有关使用拖放对JList中的元素重新排序的问题。以下代码是对代码的修改,您可以在其中将元素从一个JList拖到另一个(仅以一种方式工作)。我试图让它只对一个JList可用,但元素甚至不能从列表中拖出。所以我想这不能以这种方式完成。有什么想法是我做错了或没有考虑到的吗?我的想法是让它在带有缩略图的Jlist上工作,但由于我什至无法让它在仅使用字符串的情况下工作......我一直在研究几个D'n'D教程,但我仍然无法让它工作。任何帮助表示赞赏。importjavax.swing.*;importjavax.swing.border.*;importjava.awt.*;import
抱歉,我删除了我的APPLES和CATS示例:)这是我的问题的更新版本!我在这里失去了理智。我需要一个能启发我的人。我试过几次在这里解释我的问题。希望这一次,我的问题会更容易理解。基本上我有这个框架,并且显示了一个图像。右侧有一个JList,底部还有另一个JLabels面板。这是我的框架的屏幕截图。当我单击图像时,会弹出一个JOptionPane,就像这样。然后我输入我的输入。我的JList是一个ArrayList,所以我输入的所有内容都会添加到底部的JList和JPanel。现在,当我将鼠标悬停在我单击的部分时,您会注意到正方形消失了)。它仅在我单击图像以及将标签悬停在底部时出现。我
我有一个使用DefaultListModel的jList,我用从列表中获得的对象填充它(上下文:对象是ABM系统中的一种代理)。是否可以更改jList中对象的显示名称?我还没有找到关于这个的任何东西...... 最佳答案 如果您想要查看的信息(而不是toString()吐出的任何信息)包含在对象本身中,最直接的“Swing”方法是通过使用ListCellRenderer来实现这一点。.将ListCellRenderer(实际上是任何CellRenderer)想象成用于绘制列表中每个对象的橡皮图章。对象被传入,你设置组件,组件绘制你的
好的,我正在做我的一小部分list。我把它的大部分都记下来了。我正在尝试将字符串项添加到ArrayList,然后将其添加到JList。但是,我在编译时遇到此错误:C:\Users\Dan\Documents\DanJavaGen\inventory.java:30:cannotfindsymbolsymbol:constructorJList(java.util.ArrayList)location:classjavax.swing.JListlist=newJList(arr);这可能是我犯的一些菜鸟错误......:/代码:importjava.applet.Applet;impo
我在我的JList中添加了一些水平显示它们的图像。现在我想增加JList中图像之间的空间。有人可以建议怎么做吗? 最佳答案 为您的JList项目设置固定的宽度和高度。list.setFixedCellHeight(50);list.setFixedCellWidth(100);setBorder()方法用于设置边框插入。您也可以将它添加到上面的行中以安排边距空间:list.setBorder(newEmptyBorder(10,10,10,10)); 关于java-如何在Jlist项目之