📄 configer.java
字号:
package lifetest;import java.awt.Frame;import java.awt.*;import java.awt.event.*;import java.util.Vector;import lifetest.World;/** * Title: LifeSim * Description: * Copyright: Copyright (c) 2004 * Company: www.swarmagents.com * @author jake * @version 1.0 */public class Configer extends Frame{ //Choice agents; //Thread runner1;//定义独立线程 Button btnOK = new Button("OK"); Button btnCancel=new Button("Cancel"); lifesim localapp; World wd; Panel botPan; Panel conPan; TextField txtIniagent=new TextField(); TextField txtInigrass=new TextField(); TextField txtMaxContaining=new TextField(); TextField txtMaxAge=new TextField(); TextField txtEatEnergy=new TextField(); TextField txtSeedGrow=new TextField(); Choice choSeedE=new Choice(); TextField txtMuteP=new TextField(); TextField txtLenP=new TextField(); int selectedSeedE=0; int EatEnergy=0; public Configer(lifesim local) { localapp=local; wd=localapp.localwd; try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } public Configer() { try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } private void jbInit() throws Exception { setLayout(new BorderLayout()); botPan=new Panel(); conPan=new Panel(); this.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(WindowEvent e) { this_windowClosing(e); } }); txtEatEnergy.addTextListener(new java.awt.event.TextListener() { public void textValueChanged(TextEvent e) { txtEatEnergy_textValueChanged(e); } }); botPan.add(btnOK); botPan.add(btnCancel); conPan.setLayout(new GridLayout(9,2)); conPan.add(new Label("Initial agents number:")); conPan.add(txtIniagent); conPan.add(new Label("Initial foods density(<1)")); conPan.add(txtInigrass); conPan.add(new Label("Max agents containning:")); conPan.add(txtMaxContaining); conPan.add(new Label("Agents' max age:")); conPan.add(txtMaxAge); conPan.add(new Label("Food Energy:")); conPan.add(txtEatEnergy); conPan.add(new Label("delay time seeds to grasses: ")); conPan.add(txtSeedGrow); conPan.add(new Label("Energy to produce a seed")); conPan.add(choSeedE); conPan.add(new Label("Agents' mutation p:")); conPan.add(txtMuteP); conPan.add(new Label("Agents' length p:")); conPan.add(txtLenP); this.add("Center",conPan); this.add("South",botPan); txtIniagent.setText(Integer.toString(wd.iniNum)); txtInigrass.setText(Double.toString(wd.FoodRan)); txtMaxContaining.setText(Integer.toString(wd.maxContaining)); txtMaxAge.setText(Integer.toString(wd.maxAge)); txtEatEnergy.setText(Integer.toString(wd.EatEnergy)); EatEnergy=wd.EatEnergy; int j=0; for(int i=10;i<wd.EatEnergy;i+=10){ choSeedE.addItem(Integer.toString(i)); if(i==wd.SeedGrassE){ selectedSeedE=j; choSeedE.select(j); } j++; } txtSeedGrow.setText(Integer.toString(wd.growUpTime)); choSeedE.select(Integer.toString(wd.SeedGrassE)); txtMuteP.setText(Double.toString(wd.muteP)); txtLenP.setText(Double.toString(wd.lenP) ); this.setTitle("Basic Parameters"); } public void paint(Graphics g){ super.paint(g); } public boolean action(Event evt, Object o) { if(evt.target==btnOK){ wd.iniNum=Integer.valueOf(txtIniagent.getText()).intValue(); wd.FoodRan=Double.valueOf(txtInigrass.getText()).doubleValue(); wd.maxContaining=Integer.valueOf(txtMaxContaining.getText()).intValue(); wd.maxAge=Integer.valueOf(txtMaxAge.getText()).intValue(); wd.growUpTime=Integer.valueOf(txtSeedGrow.getText()).intValue(); txtSeedGrow.setText(Integer.toString(wd.growUpTime)); wd.SeedGrassE=Integer.valueOf(choSeedE.getSelectedItem()).intValue(); wd.muteP=Double.valueOf(txtMuteP.getText()).doubleValue(); wd.lenP=Double.valueOf(txtLenP.getText()).doubleValue(); wd.EatEnergy=Integer.valueOf(txtEatEnergy.getText()).intValue(); //localapp.reinit(); localapp.canvas.repaint(); this.hide(); this.dispose(); return true; }else if(evt.target==choSeedE){ selectedSeedE=choSeedE.getSelectedIndex(); }else if(evt.target==btnCancel){ this.hide(); this.dispose(); return true; } return false; } void this_windowClosing(WindowEvent e) { this.hide(); this.dispose(); } void txtEatEnergy_textValueChanged(TextEvent e) { choSeedE.removeAll(); EatEnergy=Integer.valueOf(txtEatEnergy.getText()).intValue(); int j=0; for(int i=10;i<EatEnergy;i+=10){ choSeedE.addItem(Integer.toString(i)); if(j==selectedSeedE)choSeedE.select(j); j++; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -