⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 standardgainmetercontrol.java

📁 FMJ(freedom media for java)是java视频开发的新选择
💻 JAVA
字号:
package net.sf.fmj.ejmf.toolkit.gui.controls;import java.awt.Component;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.EventListener;import javax.media.Controller;import javax.media.GainChangeEvent;import javax.media.GainChangeListener;import javax.media.GainControl;import javax.swing.SwingUtilities;/*** Gain meter Control for StandardControlPanel.*/public class StandardGainMeterControl extends AbstractGainControl		implements GainChangeListener {	/** Create a StandardGainMeterControl and associate it	* with a Controller.	* @param controller A Controller with which control is associated.	*/    public StandardGainMeterControl(Skin skin, Controller controller) {	super(skin, controller);    }	/** Create a StandardGainMeterControl */    public StandardGainMeterControl(Skin skin) {    	super(skin);    }	/**	*  This method is called when <code>setController</code>	* is called on an AbstractListenerControl.	* @param newController A Controller with which this control	* is associated.	*/    protected void setControllerHook(Controller newController) {	super.setControllerHook(newController);	if (isOperational()) {	    GainControl gc = getGainControl();	    setLevel(gc.getLevel());	    setMute(gc.getMute());	    gc.addGainChangeListener(this);	}    }	/**	* Create the GainMeter Component.		* @return The component that acts as gain meter control.	* @see net.sf.fmj.ejmf.toolkit.gui.controls.skins.ejmf.GainMeterButton	*/    @Override    protected Component createControlComponent(Skin skin) {	return skin.createGainMeterButton();    }	/**	* Set the level value for this GainMeter.	* The input argument is a level value from the	* Player's GainControl. It is the GainMeter's	* responsibility to convert it to a value that	* can be meaningfully rendered.	* 	* @param level This argument represents a level	* value returned by a Player's GainControl. 	*/    public void setLevel(float level) {	((GainMeter) getControlComponent()).setLevel(level);    }		/**	* Set the mute value for this GainMeter. 	* 	* @param muted If muted is true, audio signal is	* suppressed. Otherwise, audio signal is rendered.	*/    public void setMute(boolean muted) {	((GainMeter) getControlComponent()).setMute(muted);    }	/**	* Return the ActionListener used to toggle 	* mute button.	* @return An ActionListener for toggling mute state.	*/    protected EventListener createControlListener() {	    return new ActionListener() {	        public void actionPerformed(ActionEvent e) {                    GainControl gc = getGainControl();		    boolean muted = gc.getMute();		    gc.setMute(!muted);		    setMute(!muted);          	}           };    }   	/**     	* Implements GainChangeListener. Level and mute     	* are set appropriately and the view updated for every     	* change to the GainControl on which this GainMeter is a     	* listener.	* @param gce An GainChangeEvent triggerd by a GainControl	* @see javax.media.GainControl		* @see javax.media.GainChangeEvent	*/   public void gainChange(GainChangeEvent gce) {       float level = gce.getSourceGainControl().getLevel();       SwingUtilities.invokeLater(new SetLevelThread(level));   }	/* A convenience runnable for manipulating	* level as displayed in GUI.	*/   class SetLevelThread implements Runnable {	private float level;        public SetLevelThread(float level) {	    this.level = level;        }        public void run() {	    setLevel(level);        }   }}

⌨️ 快捷键说明

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