gainspinner.java

来自「Java version of ABC/HR comparator v0.5. 」· Java 代码 · 共 36 行

JAVA
36
字号
package abchr.gui;

import abchr.Attributable;
import abchr.audio.SampleGain;

import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.*;

class GainSpinner implements AttributableView,ChangeListener {
	private JSpinner spinner=new JSpinner(new SpinnerNumberModel(new Float(0.0),null,null,new Float(0.01)));
	private Attributable model;

	public JComponent getComponent(){return spinner;}
	public String getName(){return "Gain";}

	public void setModel(Attributable model) {
		this.model=model;
		spinner.setValue(model==null?new Float(0.0):SampleGain.getGainObj(model));
	}

	public GainSpinner(Attributable model) {
		spinner.setPreferredSize(new Dimension(70,spinner.getPreferredSize().height));
		spinner.addChangeListener(this);
		setModel(model);
	}

	public GainSpinner(){this(null);}

	public void stateChanged(ChangeEvent e) {
		if(model==null){return;}
		SampleGain.setGain(model,(Float)spinner.getValue());
	}
}

⌨️ 快捷键说明

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