【问题标题】:Initializing a Java Swing JScrollPane to the bottom将 Java Swing JScrollPane 初始化到底部
【发布时间】:2010-08-06 16:44:51
【问题描述】:

我正在尝试初始化一个 JScrollPane 以从底部开始生活。我不希望它在最初显示后自动滚动。滚动窗格确实包含JTextComponent 的子类,而是包含许多JPanels 的JPanel(GridLayout(0, 1))

我尝试在父级 Window (addComponentListener:componentShown) 上的事件处理程序中使用 JViewport.scrollRectToVisible(),但它似乎不起作用。

有什么想法吗?

【问题讨论】:

    标签: java swing jscrollpane


    【解决方案1】:

    滚动窗格不包含 JTextComponent 的子类,而是 一个 JPanel(GridLayout(0, 1)) 包含 许多 JPanel。

    然后你需要滚动面板:

    panel.scrollRectToVisible(...);
    

    或者你应该可以使用:

    JScrollBar sb = scrollPane.getVerticalScrollBar();
    sb.setValue( sb.getMaximu() );
    

    此外,此代码需要在 GUI 可见“之后”执行。

    【讨论】:

    • +1 我认为它可以在pack() 之后和setVisible() 之前。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 1970-01-01
    相关资源
    最近更新 更多