当前位置: 首页 > 教程 > Java Swing >

Java JScrollPane

精华
小牛编辑
140浏览
2023-03-14

1 Java JScrollPane的介绍

JscrollPane用于制作组件的可滚动视图。当屏幕大小受到限制时,我们使用滚动窗格来显示大型组件或大小可以动态更改的组件。

2 Java JScrollPane的构造方法

构造方法 描述
JScrollPane() 创建一个滚动窗格。Component参数(如果存在)设置滚动窗格的客户端。如果存在两个int参数,则分别设置垂直和水平滚动条策略。
JScrollPane(Component)
JScrollPane(int, int)
JScrollPane(Component, int, int)

3 Java JScrollPane的方法

方法 描述
void setColumnHeaderView(Component) 设置滚动窗格的列标题。
void setRowHeaderView(Component) 为滚动窗格设置行标题。
void setCorner(String, Component)

设置或获取指定的角。int参数指定哪个角,并且必须是ScrollPaneConstants中定义的以下常量之一:

UPPER_LEFT_CORNER,UPPER_RIGHT_CORNER,LOWER_LEFT_CORNER,LOWER_RIGHT_CORNER,LOWER_LEADING_CORNER,LOWER_TRAILING_CORNER,UPPER_LEADING_PER,NERPER。

Component getCorner(String)
void setViewportView(Component) 设置滚动窗格的客户端。

4 Java JScrollPane的案例

package cn.xnip;

/**
 * 小牛知识库网: https://www.xnip.cn
 */

import java.awt.FlowLayout;
import javax.swing.*;

public class JScrollPaneExample {  
    private static final long serialVersionUID = 1L;  
  
    private static void createAndShowGUI() {  
  
        // Create and set up the window.  
        final JFrame frame = new JFrame("JScrollPane案例-小牛知识库网");
  
        // Display the window.  
        frame.setSize(500, 500);  
        frame.setVisible(true);  
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  
        // set flow layout for the frame  
        frame.getContentPane().setLayout(new FlowLayout());  
  
        JTextArea textArea = new JTextArea(20, 20);
        JScrollPane scrollableTextArea = new JScrollPane(textArea);  
  
        scrollableTextArea.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);  
        scrollableTextArea.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);  
  
        frame.getContentPane().add(scrollableTextArea);  
    }  
    public static void main(String[] args) {  
  
  
        javax.swing.SwingUtilities.invokeLater(new Runnable() {  
  
            public void run() {  
                createAndShowGUI();  
            }  
        });  
    }  
}

输出结果为: