Java 奇怪的昆虫

Java 奇怪的昆虫,java,swing,jlist,Java,Swing,Jlist,我不确定是什么导致了这种情况。我有许多其他JLists具有几乎完全相同的代码,但这种情况不会发生 我很确定这不是你的代码。以下两行 scrollPane_4.setViewportView(list_4); final JList list_4 = new JList(modelItems); 它们的顺序相反。在声明列表之前,首先设置视口视图。确保在此行中未将视图设置为null,并将这两个视图的顺序颠倒。列出4个设置边界(428、39、294、187)看起来不正确。完全删除这一行-布局


我不确定是什么导致了这种情况。我有许多其他JLists具有几乎完全相同的代码,但这种情况不会发生

我很确定这不是你的代码。以下两行

  scrollPane_4.setViewportView(list_4);
  final JList list_4 = new JList(modelItems);

它们的顺序相反。在声明列表之前,首先设置视口视图。确保在此行中未将视图设置为
null
,并将这两个视图的顺序颠倒。

列出4个设置边界(428、39、294、187)看起来不正确。完全删除这一行-布局应负责正确的位置。我首先要说的是
list_4.setBounds(428,39294187)是一个坏主意…其次,它可能是一个混合轻型和重型组件的问题,或者是一个坏的自定义绘制问题,或者是代码段没有突出显示的其他问题…我使用的是绝对边界。这就是我设定界限的原因。布局管理器设置为空@mKorbel I将无法发布SSCCE,因为我使用的是第三方API。代码无法执行,因为它需要您在一个单独的(付费)应用程序中运行脚本。@垃圾神这看起来主要是在组件层次结构中添加
JList
,而不是
JScrollPane
,但如果没有一个安全的环境,我们只能放肆guesses@user2450444我将无法发布SSCCE,因为我使用的是第三方API,您显然没有阅读这篇文章,因为它专门处理第三方库问题。我在粘贴Action listener后对此进行了更改。这就是为什么它不正常。为什么你认为这不是我的代码?我向你保证一切都是如此。@user2450444我仍然不明白为什么添加
ActionListener
会混淆这两行。很明显,您的代码无法编译,因此假设它不是您运行的“原始”代码。无论如何,您对
setBounds
的调用很可能是您的问题之一(您不应该调用setBounds,将其留给LayoutManager)。看起来您正在将列表而不是滚动窗格添加到组件层次结构中。为了更快地获得更好的帮助,请发布一个。
  scrollPane_4.setViewportView(list_4);
  final JList list_4 = new JList(modelItems);