java - JList 没有滚动条

标签 java swing netbeans jscrollpane jlist

在我的 swing 应用程序中,我将 Vector 设置为 JList 的数据。 JList 可调整大小(垂直和水平)。可查看的项目数为 8。当向 JList 设置的数据超过 8 项时,Scroller 不可见,要查看其余项目,应下拉 JList。有什么方法可以得到这个 JScroller 吗?

我使用 Netbeans IDE 7.2 我检查了 JScrollerPane 的属性。它具有水平和垂直滚动条的默认值。

这是 NetBeans 创建的 JScrollPane 和 JList 代码。
JScrollPane
jScrollPane1 = new javax.swing.JScrollPane();

这是 JList

jList1 = new javax.swing.JList();    
jList1.setBackground(new java.awt.Color(##, ##, ##));    
jList1.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(##, ##, ##), 1, true));    
jList1.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N    
jList1.setForeground(new java.awt.Color(##, ##, ##));      

jList1.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);    
jList1.setCellRenderer(new CellRendererManager());    
jList1.setMaximumSize(new java.awt.Dimension(30, 80));    
jList1.setMinimumSize(new java.awt.Dimension(30, 80));    
jList1.setPreferredSize(new java.awt.Dimension(30, 80));    
jList1.setValueIsAdjusting(true);    
jScrollPane1.setViewportView(jList1);

`

最佳答案

您声明:

JScrollPane lays on FreeDesign layout which shows in NetBeans IDE. JScrollPane has not been set any size.But the JList has set a dimension(30,80)

这就是你的问题——你正在设置 JList 的维度,这会阻止它的 View 扩展,即使它是由 JScrollPane 保存的。

解决方案:不要这样做。阅读并使用各种布局管理器,以便它们和组件固有的首选大小为您完成所有大小调整和繁重的工作。

关于java - JList 没有滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12437971/

相关文章:

java - 等待所有任务(未知数量)完成 - ThreadPoolExecutor

java - 从文本文件创建对象

java - 单击鼠标交换按钮图标

java - 在 JTextPane 中保存字体

ubuntu - Netbeans 7.3 在 ubuntu 上启动

java - Jakarta/Java EE 兼容性如何工作?

java - 如何在 Eclipse RCP 中使用非插件项目和插件项目?

java - 如何检测 JavaFX 中完成的调整大小操作?

java - 扫描二维码后自动过滤 JTable

java - 如何使用 NetBeans 包含的所有库依赖项构建可执行文件?