模块  java.desktop
软件包  javax.swing

Class ScrollPaneLayout

    • 构造方法详细信息

      • ScrollPaneLayout

        public ScrollPaneLayout()
    • 方法详细信息

      • syncWithScrollPane

        public void syncWithScrollPane​(JScrollPane sp)
        将ScrollPaneLayout设置为JScrollPane的LayoutManager后,将调用此方法。 它初始化通常由addLayoutComponent设置的所有内部字段。 例如:
          ScrollPaneLayout mySPLayout = new ScrollPanelLayout() {
             public void layoutContainer(Container p) {
                 super.layoutContainer(p);
                 // do some extra work here ...
             }
         };
         scrollpane.setLayout(mySPLayout): 
        参数
        sp -的实例 JScrollPane
      • addSingletonComponent

        protected Component addSingletonComponent​(Component oldC,
                                                  Component newC)
        删除现有组件。 添加新组件(如左角或垂直滚动条)时,必须删除旧组件(如果存在)。

        此方法返回newC 如果oldC不等于newC且非null ,则将从其父项中删除它。

        参数
        oldC - 替换 Component
        newC - 要添加的 Component
        结果
        newC
      • addLayoutComponent

        public void addLayoutComponent​(String s,
                                       Component c)
        将指定的组件添加到布局中。 使用以下方法之一识别布局:
        • ScrollPaneConstants.VIEWPORT
        • ScrollPaneConstants.VERTICAL_SCROLLBAR
        • ScrollPaneConstants.HORIZONTAL_SCROLLBAR
        • ScrollPaneConstants.ROW_HEADER
        • ScrollPaneConstants.COLUMN_HEADER
        • ScrollPaneConstants.LOWER_LEFT_CORNER
        • ScrollPaneConstants.LOWER_RIGHT_CORNER
        • ScrollPaneConstants.UPPER_LEFT_CORNER
        • ScrollPaneConstants.UPPER_RIGHT_CORNER
        Specified by:
        addLayoutComponent在界面 LayoutManager
        参数
        s - 组件标识符
        c - 要添加的组件
        异常
        IllegalArgumentException - 如果 s是无效密钥
      • getVerticalScrollBarPolicy

        public int getVerticalScrollBarPolicy()
        返回垂直滚动条显示策略。
        结果
        给出显示策略的整数
        另请参见:
        setVerticalScrollBarPolicy(int)
      • setVerticalScrollBarPolicy

        public void setVerticalScrollBarPolicy​(int x)
        设置垂直滚动条显示策略。 选项是:
        • ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED
        • ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER
        • ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
        注意:应用程序应使用此方法的JScrollPane版本。 它仅用于向后兼容此类的Swing 1.0.2(及更早版本)版本。
        参数
        x - 给出显示策略的整数
        异常
        IllegalArgumentException - 如果 x是无效的垂直滚动条策略,如上所列
      • getHorizontalScrollBarPolicy

        public int getHorizontalScrollBarPolicy()
        返回水平滚动条显示策略。
        结果
        给出显示策略的整数
        另请参见:
        setHorizontalScrollBarPolicy(int)
      • setHorizontalScrollBarPolicy

        public void setHorizontalScrollBarPolicy​(int x)
        设置水平滚动条显示策略。 选项是:
        • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED
        • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
        • ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS
        注意:应用程序应使用此方法的JScrollPane版本。 它仅用于向后兼容此类的Swing 1.0.2(及更早版本)版本。
        参数
        x - 提供显示策略的int
        异常
        IllegalArgumentException - 如果 x不是有效的水平滚动条策略,如上所列
      • getViewport

        public JViewport getViewport()
        返回显示可滚动内容的 JViewport对象。
        结果
        显示可滚动内容的 JViewport对象
        另请参见:
        JScrollPane.getViewport()
      • getRowHeader

        public JViewport getRowHeader()
        返回作为行标题的 JViewport对象。
        结果
        作为行标题的 JViewport对象
        另请参见:
        JScrollPane.getRowHeader()
      • preferredLayoutSize

        public Dimension preferredLayoutSize​(Container parent)
        ScrollPane的首选大小是插图的大小,加上视口的首选大小,加上可见标题的首选大小,以及在给定当前视图和当前滚动条displayPolicies时将显示的滚动条的首选大小。

        请注意,rowHeader是作为首选宽度的一部分计算的,而colHeader是作为首选大小的一部分计算的。

        Specified by:
        preferredLayoutSize在界面 LayoutManager
        参数
        parent - 将布置的 Container
        结果
        Dimension对象,指定视口和任何滚动条的首选大小
        另请参见:
        ViewportLayoutLayoutManager
      • layoutContainer

        public void layoutContainer​(Container parent)
        布置滚动窗格。 组件的定位取决于以下约束:
        • 行标题(如果存在且可见)获取其首选宽度和视口的高度。
        • 列标题(如果存在且可见)将获得其首选高度和视口宽度。
        • 如果需要垂直滚动条,即如果视口的范围高度小于其视图高度,或者如果displayPolicy始终如此,则将其视为displayPolicy的行标题并使其可见。
        • 如果需要水平滚动条,则将其视为列标题(请参阅上面有关垂直滚动条的段落)。
        • 如果滚动窗格具有非null viewportBorder ,则为其分配空间。
        • 在考虑先前的约束之后,视口获取可用空间。
        • 角落组件(如果提供)与滚动条和标题的末端对齐。 如果有垂直滚动条,则出现右角; 如果有水平滚动条,则出现下角; 行标题左下角,列标题获取上角。
        Specified by:
        layoutContainer在界面 LayoutManager
        参数
        parent - Container布局
      • getViewportBorderBounds

        @Deprecated
        public Rectangle getViewportBorderBounds​(JScrollPane scrollpane)
        Deprecated.
        As of JDK version Swing1.1 replaced by JScrollPane.getViewportBorderBounds().
        返回指定滚动窗格视口周围边框的边界。
        参数
        scrollpane -的实例 JScrollPane
        结果
        视口边框的大小和位置