62,616
社区成员
发帖
与我相关
我的任务
分享
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Test {
JFrame frame;
JSlider slider;
JScrollPane jsp;
JPanel pan;
public Test(){
frame=new JFrame();
Container contentPane=frame.getContentPane();
pan=new JPanel();
pan.setPreferredSize(new Dimension(300,300));
jsp=new JScrollPane(pan);
contentPane.add(jsp);
slider=new JSlider();
slider.setMinimum(0);
slider.setMaximum(400);
slider.setValue(0);
slider.setPaintLabels(true);
slider.setPaintTicks(true);
slider.setPaintTrack(true);
slider.setMajorTickSpacing(40);
slider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
int value=slider.getValue();
pan.setPreferredSize(new Dimension(300+value,300+value));
jsp.setViewportView(pan);
//自己设置JScrollPane的两个滚动条的值
jsp.getHorizontalScrollBar().setValue(jsp.getHorizontalScrollBar().getMaximum());
jsp.getVerticalScrollBar().setValue(jsp.getVerticalScrollBar().getMaximum());
}
});
contentPane.add(slider,BorderLayout.SOUTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) {
new Test();
}
}