Swing - JScrollBar 类



介绍

JScrollBar 类是滚动条的实现。

类声明

以下是javax.swing.JScrollBar类的声明:

public class JScrollBar
   extends JComponent
      implements Adjustable, Accessible

字段

以下是javax.swing.ImageIcon类的字段:

  • protected int blockIncrement

  • protected BoundedRangeModel model - 表示滚动条的最小值、最大值、范围(也称为“visibleAmount”)和当前值的模型。

  • protected int orientation

  • protected int unitIncrement

类构造函数

序号 构造函数和描述
1

JScrollBar()

创建一个具有初始值的垂直滚动条。

2

JScrollBar(int orientation)

创建一个具有指定方向和初始值的滚动条。

3

JScrollBar(int orientation, int value, int extent, int min, int max)

创建一个具有指定方向、值、范围、最小值和最大值的滚动条。

类方法

序号 方法和描述
1

void addAdjustmentListener(AdjustmentListener l)

添加一个AdjustmentListener。

2

protected void fireAdjustmentValueChanged(int id, int type, int value)

通知监听器滚动条的模型已更改。

3

AccessibleContext getAccessibleContext()

获取与此 JScrollBar 关联的 AccessibleContext。

4

AdjustmentListener[] getAdjustmentListeners()

返回使用 addAdjustmentListener() 添加到此 JScrollBar 的所有 AdjustmentListener 的数组。

5

int getBlockIncrement()

为了与 java.awt.Scrollbar 向后兼容。

6

int getBlockIncrement(int direction)

返回更改滚动条值的数量,给定一个块(通常是“页面”)向上/向下请求。

7

int getMaximum()

滚动条的最大值为最大值 - 范围。

8

Dimension getMaximumSize()

滚动条沿其滚动轴灵活,沿另一轴刚性。

9

int getMinimum()

返回滚动条支持的最小值(通常为零)。

10

Dimension getMinimumSize()

滚动条沿其滚动轴灵活,沿另一轴刚性。

11

BoundedRangeModel getModel()

返回处理滚动条四个基本属性的数据模型:最小值、最大值、值、范围。

12

int getOrientation()

返回组件的方向(水平或垂直)。

13

ScrollBarUI getUI()

返回实现此组件外观和感觉的委托。

14

String getUIClassID()

返回此组件的 LookAndFeel 类的名称。

15

int getUnitIncrement()

为了与 java.awt.Scrollbar 向后兼容。

16

int getUnitIncrement(int direction)

返回更改滚动条值的数量,给定一个单位向上/向下请求。

17

int getValue()

返回滚动条的值。

18

boolean getValueIsAdjusting()

如果正在拖动滚动条旋钮,则为真。

19

int getVisibleAmount()

返回滚动条的范围,也称为“visibleAmount”。

20

protected String paramString()

返回此 JScrollBar 的字符串表示形式。

21

void removeAdjustmentListener(AdjustmentListener l)

移除一个 AdjustmentEvent 监听器。

22

void setBlockIncrement(int blockIncrement)

设置 blockIncrement 属性。

23

void setEnabled(boolean x)

启用组件,以便可以更改旋钮位置。

24

void setMaximum(int maximum)

设置模型的最大属性。

25

void setMinimum(int minimum)

设置模型的最小属性。

26

void setModel(BoundedRangeModel newModel)

设置处理滚动条四个基本属性的模型:最小值、最大值、值、范围。

27

void setOrientation(int orientation)

将滚动条的方向设置为 VERTICAL 或 HORIZONTAL。

28

void setUI(ScrollBarUI ui)

设置呈现此组件的 L&F 对象。

29

void setUnitIncrement(int unitIncrement)

设置 unitIncrement 属性。

30

void setValue(int value)

设置滚动条的值。

31

void setValueIsAdjusting(boolean b)

设置模型的 valueIsAdjusting 属性。

32

void setValues(int newValue, int newExtent, int newMin, int newMax)

在强制参数服从常用约束后设置四个 BoundedRangeModel 属性。

33

void setVisibleAmount(int extent)

设置模型的范围属性。

34

void updateUI()

重写 JComponent.updateUI。

继承的方法

此类继承自以下类的方法:

  • java.lang.Object

JScrollBar 示例

使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > SWING > com > tutorialspoint > gui >中。

SwingControlDemo.java

package com.tutorialspoint.gui;
 
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class SwingControlDemo {
   private JFrame mainFrame;
   private JLabel headerLabel;
   private JLabel statusLabel;
   private JPanel controlPanel;

   public SwingControlDemo(){
      prepareGUI();
   }
   public static void main(String[] args){
      SwingControlDemo  swingControlDemo = new SwingControlDemo();      
      swingControlDemo.showScrollbarDemo();
   }
   private void prepareGUI(){
      mainFrame = new JFrame("Java Swing Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new JLabel("", JLabel.CENTER);        
      statusLabel = new JLabel("",JLabel.CENTER);    
      statusLabel.setSize(350,100);

      controlPanel = new JPanel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }
   private void showScrollbarDemo() {                                       
      headerLabel.setText("Control in action: JScrollbar"); 

      final JScrollBar horizontalScroller = new JScrollBar(JScrollBar.HORIZONTAL);
      final JScrollBar verticalScroller = new JScrollBar();
      verticalScroller.setOrientation(JScrollBar.VERTICAL);
      horizontalScroller.setMaximum (100);
      horizontalScroller.setMinimum (1);
      verticalScroller.setMaximum (100);
      verticalScroller.setMinimum (1);
      
      horizontalScroller.addAdjustmentListener(new AdjustmentListener() {
         @Override
         public void adjustmentValueChanged(AdjustmentEvent e) {
            statusLabel.setText("Horozontal: "
               +horizontalScroller.getValue() 
               +" ,Vertical: "
               + verticalScroller.getValue());
            }
      });
      verticalScroller.addAdjustmentListener(new AdjustmentListener() {
         @Override
         public void adjustmentValueChanged(AdjustmentEvent e) {
            statusLabel.setText("Horozontal: "
               +horizontalScroller.getValue() 
               +" ,Vertical: "+ verticalScroller.getValue());
         }
      });
      controlPanel.add(horizontalScroller);
      controlPanel.add(verticalScroller);
      
      mainFrame.setVisible(true);  
   } 
}

使用命令提示符编译程序。转到D:/ > SWING并键入以下命令。

D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java

如果未出现错误,则表示编译成功。使用以下命令运行程序。

D:\SWING>java com.tutorialspoint.gui.SwingControlDemo

验证以下输出。

Swing JScrollbar
swing_controls.htm
广告