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

📄 changecolor.java

📁 用VLML和java实现的虚拟手机
💻 JAVA
字号:
import java.awt.*; 
import java.applet.*; 
import vrml.external.Browser; 
import vrml.external.Node; 
import vrml.external.field.EventInSFColor; 
public class ChangeColor extends Applet{ 
        Scrollbar scrBar[]=new Scrollbar[3]; 
        Label labelColor[]=new Label[3]; 
        Label labelDemo; 
        Browser browser; 
        Node myMaterial; 
        String Text[]={"R=","G=","B="}; 
        boolean isScenceLoading=true; 

        public void start(){ 
                while (isScenceLoading){ 
                        try{ 
                                browser=Browser.getBrowser(this); 
                                myMaterial=(Node)(browser.getNode("MainColor")); 
                                isScenceLoading=false; 
                                labelDemo.setText("TestColor"); 
                        } 
                        catch(Exception e){labelDemo.setText("VRML Loading");} 
                } 
        } 
        public void init(){ 
                super.init(); 
                setLayout(null); 
                resize(240,240); 
                setBackground(Color.orange); 
                for(int i=0;i<3;i++){ 
                        scrBar[i]=new Scrollbar(Scrollbar.VERTICAL); 
                        add(scrBar[i]); 
                        scrBar[i].reshape(100+80*i,5,20,160); 
                        scrBar[i].setValues(50,0,0,50); 
                        labelColor[i]=new Label(Text[i]+scrBar[i].getValue(),Label.LEFT); 
                        add(labelColor[i]); 
                        labelColor[i].setBackground(Color.green); 
                        labelColor[i].reshape(100+80*i,165,40,20); 
                } 
		
                labelDemo=new Label("TestColor",Label.CENTER); 
                add(labelDemo); 
                labelDemo.reshape(320,70,80,80); 
                labelDemo.setBackground(new Color(122,122,122)); 
        } 
        public boolean handleEvent(Event event){ 
                for(int i=0;i<3;i++){ 
                        if (event.id==Event.SCROLL_LINE_UP&&event.target==scrBar[i]){ 
                                setColorLabel(event,i); 
                                return true; 
                        } 
                        else if(event.id==Event.SCROLL_LINE_DOWN&&event.target==scrBar[i]){ 
                                setColorLabel(event,i); 
                                return true; 
                        } 
                        else if(event.id==Event.SCROLL_ABSOLUTE&&event.target==scrBar[i]){ 
                                setColorLabel(event,i); 
                            return true; 
                        } 
                } 
                return super.handleEvent(event); 
        } 
        public void setColorLabel(Event ev,int i){ 
                Color demoColor; 
                labelColor[i].setText(Text[i]+scrBar[i].getValue()); 
                demoColor=new Color((int)(2.55*scrBar[0].getValue()), 
                        (int)(2.55*scrBar[1].getValue()), 
                        (int)(2.55*scrBar[2].getValue()) 
                        ); 
                labelDemo.setBackground(demoColor); 
                float value[]=new float[3]; 
                EventInSFColor newColor=(EventInSFColor)myMaterial.getEventIn("set_diffuseColor"); 
                for(i=0;i<3;i++) 
                        value[i]=(float)(scrBar[i].getValue()/100f); 
                newColor.setValue(value); 
        } 
} 

⌨️ 快捷键说明

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