Java 中的 JScrollBar 和 JScrollPane 有什么区别?

awtjavaobject oriented programmingprogrammingswing

JScrollBar  是一个 组件 ,它不处理自己的事件,而 JScrollPane  是一个 容器 ,它处理自己的事件并执行自己的滚动。 JScrollBar  不能有 JScrollPane ,而 JScrollPane  可以有 JScrollBar

JScrollBar

  • JScrollBar  类的对象用于添加水平 垂直 滚动条 ,允许用户在指定的最小值和最大值之间选择项目。
  • JScrollBar  类是 滚动条  的实现,并继承了 JComponent  类。

语法

public class JScrollBar extends JComponent implements Adjustable, Accessible

示例

import javax.swing.*;
import java.awt.*;
public class JScrollBarTest extends JFrame{
   JScrollBarTest() {
      setTitle("JScrollBar Test");
      JScrollBar jsb = new JScrollBar();
      setLayout(new FlowLayout());
      add(jsb);
      setSize(350, 275);
      setLocationRelativeTo(null);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setVisible(true);
   }
   public static void main(String args[]) {
      new JScrollBarTest();
   }
}

输出

JScrollPane

  • JSrollPane用于创建组件的可滚动视图。
  • 滚动窗格是JScrollPane类的对象,该类扩展了JComponent类。
  • 当屏幕尺寸有限时,我们使用滚动窗格来显示较大的组件或大小可以动态变化的组件。
  • JScrollPane类的重要方法是setColumnHeaderView()setRowHeaderView()setViewportView()等。

示例

import javax.swing.*;
import java.awt.*;
public class JScrollPaneTest extends JFrame {
   JScrollPaneTest() {
      setTitle("JScrollPane Test");
      JPanel panel = new JPanel();
      panel.setLayout(new BorderLayout());
      JScrollPane jsp = new JScrollPane(panel, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,          ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
      add(jsp);
      setSize(350, 275);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JScrollPaneTest();
   }
}

输出


相关文章