我正在尝试在JPanel顶部放置垂直JScrollBar。我可以很容易地添加scoll栏,但是当我运行该程序时,滚动条没有任何作用。我可以上下拖动它,但是JPanel的内容不会移动。我已经阅读了所有有关如何执行此操作的信息,这看起来非常简单,但是显然我缺少一些东西。

请注意,我的JPanel布局设置为NULL。这是相关的代码。谢谢!

public JDlgResults(ArrayList<AnsweredProblem> probList) {
    initComponents();
    pnlResults.setLayout(null); //allows free form placing of JLabels

    /* Iterate over the ArrayList and add each problem to the results table */
    Iterator iter = probList.iterator();
    int row = 1;

    while(iter.hasNext()) {
        addRow(row, iter.next());
        row++;
    }

    JScrollBar jScrollResults = new javax.swing.JScrollBar();
    pnlResults.add(jScrollResults);
    jScrollResults.setBounds(590, 0, 17, 196);
}

最佳答案

我假设您的initComponents()方法设置了一堆组件并将其添加到contentPane并建立对话框(无论是对话框还是框架)。

只需将JScrollPane添加到该面板中就不会成功。

而是将您的pnlResults添加到JScrollPane实例,并使其成为contentPane。

10-06 14:04