switchbehavior.java

来自「java开发的源程序例子它包括有基本的java语言练习是我亲自写出来的保证没有问」· Java 代码 · 共 72 行

JAVA
72
字号
//switchBehavior.java
import java.awt.AWTEvent;
import java.awt.event.*;
import java.util.Enumeration;
import javax.media.j3d.*;
import javax.vecmath.*;


public class switchBehavior extends Behavior 
{
	WakeupOnAWTEvent w=new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED);
  	Switch s;
  
  	public switchBehavior(Switch s)
  	{
  		super();
  		this.s=s;
  	}
  
  	public void initialize()
  	{
  		this.wakeupOn(new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED));
  	}
  
  	public void processStimulus(Enumeration criteria) 
  	{
    	WakeupOnAWTEvent ev;
    	AWTEvent[] events;
    	WakeupCriterion genericEvt;
    	KeyEvent event;
    
    	while(criteria.hasMoreElements())
    	{
    		genericEvt=(WakeupCriterion) criteria.nextElement();
    		if (genericEvt instanceof WakeupOnAWTEvent)
    		{
    			ev=(WakeupOnAWTEvent) genericEvt;
    			events=ev.getAWTEvent();
    	
    			if (events[0] instanceof KeyEvent)
    			{
    				event=(KeyEvent)events[0];
    				if(event.getKeyCode()==KeyEvent.VK_1)
    				{
    					s.setWhichChild(0);
    				}
    				else 
    					if (event.getKeyCode()==KeyEvent.VK_2)
    					{
    						s.setWhichChild(1);
    					}
    					else 
    						if (event.getKeyCode()==KeyEvent.VK_3)
    						{
    							s.setWhichChild(2);
    						}
    						else 
    							if (event.getKeyCode()==KeyEvent.VK_A)
    							{
    								s.setWhichChild(Switch.CHILD_ALL);
    							}
    							else 
    								if (event.getKeyCode()==KeyEvent.VK_N)
    								{
    									s.setWhichChild(Switch.CHILD_NONE);
    								}
    			}
    		}
    	}
    	wakeupOn(w);
  	}
}//end of switchBehavior.java

⌨️ 快捷键说明

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