sliderdemo.java

来自「这是java 2应用开发指南这本书上所有例子的源代码」· Java 代码 · 共 48 行

JAVA
48
字号
import java.awt.*;
 import java.awt.event.*;
 import javax.swing.*;
 import javax.swing.event.*;
 class OvalPanel extends JPanel {
   private int diameter = 10;
   public void paintComponent( Graphics g ){
     super.paintComponent( g );
     g.drawOval( 10, 10, diameter, diameter );
   }
   public void setDiameter( int newDiameter ){
     diameter = ( newDiameter >= 0 ? newDiameter : 10 );
     repaint();
   }
   public Dimension getPreferredSize(){
     return new Dimension( 200, 200 );
   }
   public Dimension getMinimumSize(){
     return getPreferredSize();
   }
 }
 public class SliderDemo extends JFrame {
   private JSlider diameterSlider;
   private OvalPanel myPanel;
   public SliderDemo(){
     super( "Slider Demo" );
     myPanel = new OvalPanel();
     myPanel.setBackground( Color.white );
     diameterSlider =new JSlider( SwingConstants.HORIZONTAL, 0, 200, 10 );
     diameterSlider.setMajorTickSpacing( 10 );
     diameterSlider.setPaintTicks( true );
     diameterSlider.addChangeListener(new ChangeListener() {
       public void stateChanged( ChangeEvent e ){
         myPanel.setDiameter( diameterSlider.getValue() );
       }
     });
     Container container = getContentPane();
     container.add( diameterSlider, BorderLayout.SOUTH );
     container.add( myPanel, BorderLayout.CENTER );
     setSize( 220, 270 );
     setVisible( true );
   }
   public static void main( String args[] ){
     SliderDemo application = new SliderDemo();
     application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?