JScrollbar

优质
小牛编辑
134浏览
2023-12-01

介绍 (Introduction)

JScrollBar类是滚动条的实现。

Class 声明 (Class Declaration)

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

public class JScrollBar
   extends JComponent
      implements Adjustable, Accessible

字段 (Field)

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

  • protected int blockIncrement

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

  • 受保护的方向

  • protected int unitIncrement

类构造函数 (Class Constructors)

Sr.No.构造函数和描述
1

JScrollBar()

使用初始值创建垂直滚动条。

2

JScrollBar(int orientation)

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

3

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

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

Class Methods

Sr.No.方法和描述
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()

返回处理滚动条的四个基本属性的数据模型:minimum,maximum,value,extent。

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()

如果拖动滚动条旋钮,则为True。

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。

方法继承 (Methods Inherited)

该类继承以下类中的方法 -

  • java.lang.Object

JScrollBar示例

使用您选择的任何编辑器创建以下Java程序,例如D:/ 》 SWING 》 com 》 xnip 》 gui 》

SwingControlDemo.java

package cn.xnip.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\xnip\gui\SwingControlDemo.java

如果没有错误发生,则表示编译成功。 使用以下命令运行该程序。

D:\SWING>java cn.xnip.gui.SwingControlDemo

验证以下输出。

Swing JScrollbar