如何获取基于JScrollPane的窗口的可见部分的尺寸

Flo*_*011 6 java swing viewport jscrollpane jsplitpane

这个JScrollPane基于窗口的顶部是JSplitPane.

getBounds(),getWidth(),getHeight()都返回窗口的全尺寸,包括无形的(滚动)的一部分.

我只想知道可见部分的尺寸.

COD*_*BOY 8

这是仅打印可见部分的高度和宽度的示例,

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextPane;

public class TestWidth {

    public static void main(String[] args) {

        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JTextPane newsTextPane = new JTextPane();
        newsTextPane.setEditable(false);

        JScrollPane scrollPane = new JScrollPane(newsTextPane);

        frame.add(scrollPane);
        frame.setSize(300, 250);
        frame.setVisible(true);

        System.out.println("Height : " + scrollPane.getViewport().getSize().height + "\nWidth :" + scrollPane.getViewport().getSize().width);
    }
}
Run Code Online (Sandbox Code Playgroud)


mKo*_*bel 5

你看看JViewport,你可以从JScrollPane派生 JViewport