我的应用程序中有一些JSliders,我想知道为什么它们只会滑到一半。
public class test1 extends javax.swing.JFrame {
public test1() {
initComponents();
jSlider1.setExtent(255);
jSlider1.setValue(-255);
}
@SuppressWarnings("unchecked")
private void initComponents() {
jSlider1 = new javax.swing.JSlider();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new test().setVisible(true);
}
});
}
private javax.swing.JSlider jSlider1;
}
答案 0 :(得分:0)
使用setExtent或setMaximum似乎工作原理相同但setExtent使得滑块只滑动了一半。正确的代码如下所示:
public class test1 extends javax.swing.JFrame {
public test1() {
initComponents();
jSlider1.setMaximum(255);
jSlider1.setValue(-255);
}
@SuppressWarnings("unchecked")
private void initComponents() {
jSlider1 = new javax.swing.JSlider();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new test().setVisible(true);
}
});
}
private javax.swing.JSlider jSlider1;
}
答案 1 :(得分:0)
如果您打算创建范围从-255到255,则应设置jslider1.setMinimum(-255)和jslider1.setMaximum(255)。
您还可以实现ChangeListener接口并使用addChangeListener将侦听器添加到滑块。您可以在方法stateChanged(ChangeEvent e)中执行某些操作,例如更新RGB颜色。