NumControl.java
/** 餌の量の調整用パネル */
package zoo;
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
public class NumControl extends JPanel {
/** JSliderのオブジェクト */
protected JSlider slider=null;
/** 餌の量の値の取得 */
public int getFoodNum() {
return slider.getValue();
}
/** 餌の量の値の設定 */
public void setFoodNum( int val ) {
slider.setValue( val );
}
/** VariableFoodEnvironmentのオブジェクト */
protected VariableFoodEnvironment environment=null;
/** コンストラクタ */
public NumControl( VariableFoodEnvironment env ) {
super();
environment = env;
int foodNum = environment.getFoodNum();
slider = new JSlider( 0, 100, foodNum );
add( slider );
ChangeAdapter adapter = new ChangeAdapter();
slider.addChangeListener( adapter );
}
/** イベント処理のinnerクラス */
class ChangeAdapter implements ChangeListener {
/** イベント処理のメソッド */
public void stateChanged( ChangeEvent evt ) {
environment.setFoodNum( getFoodNum() );
}
}
}