当前,我正在尝试使用JSlider控制音轨的音量。它没有显示错误,但没有调整音轨的音量。
static final int VOLUME_MIN = 0;
static final int VOLUME_MAX = 6;
static final int VOLUME_INIT = 3;
static FloatControl gainControl;
public static void main(String[] args) {
JSlider volumeCtrl = new JSlider(JSlider.HORIZONTAL, VOLUME_MIN, VOLUME_MAX, VOLUME_INIT);
volumeCtrl.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
// TODO Auto-generated method stub
JSlider source = (JSlider) e.getSource();
if (!source.getValueIsAdjusting()) {
float volume = (float) source.getValue();
float gain=1;
float dB = (float) (Math.log(gain) / Math.log(10.0) * 20.0);
if (volume == 0)
gainControl.setValue(0);
gainControl.setValue(dB);
}
}
});
jf.add(volumeCtrl);
我希望它可以使用JSlider的旋钮来调整音轨的音量。