java滚动条调整RGB色的问题
发布网友
发布时间:2022-04-30 12:56
我来回答
共1个回答
热心网友
时间:2022-06-22 09:36
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
public class T {
public static void main(String[] args) {
final JFrame f = new JFrame();
final JScrollBar red = new JScrollBar();
final JScrollBar green = new JScrollBar();
final JScrollBar blue = new JScrollBar();
red.setMaximum(255);
red.setMinimum(0);
red.setValue(255);
green.setMaximum(255);
green.setMinimum(0);
green.setValue(200);
blue.setMaximum(255);
blue.setMinimum(0);
blue.setValue(128);
//给滚动条加*
AdjustmentListener cl = new AdjustmentListener(){
public void adjustmentValueChanged(AdjustmentEvent e) {
setBG(f,red.getValue(),green.getValue(),blue.getValue());
}};
red.addAdjustmentListener(cl);
green.addAdjustmentListener(cl);
blue.addAdjustmentListener(cl);
red.setToolTipText("red");
green.setToolTipText("green");
blue.setToolTipText("blue");
JPanel east = new JPanel();
east.setLayout(new GridLayout(1,3));
east.add(red);
east.add(green);
east.add(blue);
f.setSize(400,300);f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().setLayout(new BorderLayout());
f.add(east,"East");
f.setVisible(true);
setBG(f,red.getValue(),green.getValue(),blue.getValue());
}
static void setBG(JFrame f,int r,int g,int b){
f.getContentPane().setBackground(new Color(r,g,b));
}
}