📄 ifsrule.java
字号:
package leaf;import java.awt.*;import java.awt.event.*;/** * Title: leaf * Description: * Copyright: Copyright (c) 2003 * Company: http://agents.yeah.net * @author keatskk@sina.com * @version 1.0 */public class IFSRule extends Frame { IFSControl localIFSControl; int widthall=700; int width=600; int height=300; int scale=30; int pointX1=0; int pointY1=0; int pointX2=0; int pointY2=0; int pointChange=0;// double offsetX=0;// double offsetY=0;// double sclX=0;// double sclY=0// double scl=0;// double rotate=0;// double strecth=0; Panel panMakeRule; Label lblMake[]; TextField txtMakeRule[]; TextField txtMakeP; Button btnDel; Button btnAccept; Color c=new Color(164, 223, 101);//画笔颜色 Color white=new Color(255,255,255); Color yellow=new Color(255,250,14); Color blue=new Color(14,212,255); Color bg=new Color(0,0,0);//背景颜色 public IFSRule(IFSControl rl) { super("制定规则"); localIFSControl=rl; try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } private void jbInit() throws Exception { panMakeRule = new Panel(); setLayout(new BorderLayout()); //panMakeRule.setLayout(new BorderLayout()); GridBagLayout layout = new GridBagLayout(); panMakeRule.setLayout(layout);// btnDel = new Button("清空"); btnAccept = new Button("确定"); this.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(WindowEvent e) { this_windowClosing(e); } }); this.setBackground(bg); panMakeRule.setBackground(Color.lightGray); btnDel.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { btnDel_actionPerformed(e); } }); btnAccept.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { btnAccept_actionPerformed(e); } }); this.add("South",panMakeRule); Label lblMakeRule = new Label("Rule"+localIFSControl.NoRule+" "); Label lblMakeP = new Label(" P:"); txtMakeP = new TextField(2); lblMake = new Label [6]; txtMakeRule = new TextField [6]; for(int i=0;i<6;i++){ lblMake[i]=new Label(); txtMakeRule[i]= new TextField(2); txtMakeRule[i].setText(localIFSControl.txtRule[i][localIFSControl.NoRule].getText()); } txtMakeP.setText(localIFSControl.txtP[localIFSControl.NoRule].getText()); for(int i=0;i<6;i++){ txtMakeRule[i].addTextListener(new java.awt.event.TextListener() { public void textValueChanged(TextEvent e) { txtMakeP_textValueChanged(e); } }); } lblMake[0].setText("a:"); lblMake[1].setText(" b:"); lblMake[2].setText(" c:"); lblMake[3].setText(" d:"); lblMake[4].setText(" e:"); lblMake[5].setText(" f:");//Grid画表格 GridBagConstraints constraints = new GridBagConstraints(); constraints.weightx = 0.0; constraints.weighty = 0.0; // constraints.fill = GridBagConstraints.BOTH; constraints.gridwidth = 1; constraints.gridheight = 1; // constraints.gridx=0;constraints.gridy=0; layout.setConstraints(btnDel, constraints); panMakeRule.add(btnDel);//,new GridBagConstraints(0,i,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.NONE,new Insets(0,0,0,0),0,0)); constraints.gridx=1;constraints.gridy=0; layout.setConstraints(lblMakeRule, constraints); panMakeRule.add(lblMakeRule);//,new GridBagConstraints(1,i,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.NONE,new Insets(0,0,0,0),0,0)); for(int i=0;i<6;i++){ for(int j=0;j<6;j++){ constraints.gridx=i*2+2;constraints.gridy=0; layout.setConstraints(lblMake[i], constraints); panMakeRule.add(lblMake[i]);//,new GridBagConstraints(i*2+2,j,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.NONE,new Insets(0,0,0,0),0,0)); constraints.gridx=i*2+3;constraints.gridy=0; layout.setConstraints(txtMakeRule[i], constraints); panMakeRule.add(txtMakeRule[i]);//,new GridBagConstraints(i*2+3,j,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.NONE,new Insets(0,0,0,0),0,0)); //RulePanel.add(lbl[j]); } } constraints.gridx=14;constraints.gridy=0; layout.setConstraints(lblMakeP, constraints); panMakeRule.add(lblMakeP);//,new GridBagConstraints(14,i,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.NONE,new Insets(0,0,0,0),0,0)); constraints.gridx=15;constraints.gridy=0; layout.setConstraints(txtMakeP, constraints); panMakeRule.add(txtMakeP); constraints.gridx=16;constraints.gridy=0; layout.setConstraints(btnAccept,constraints); panMakeRule.add(btnAccept);//Grid画表格结束 } public void paint (Graphics g) { g.clearRect(0,0,700,350); g.setColor(bg); g.fillRect(0,0,700,350); g.setColor(white); g.drawLine((widthall-width)/2,height/2,widthall-(widthall-width)/2,height/2);//横坐标 g.drawLine(widthall/2,0,widthall/2,height);//纵坐标 g.setColor(blue); g.drawLine(widthall/2,height/2,widthall/2+scale,height/2); g.drawLine(widthall/2+scale,height/2,widthall/2+scale,height/2-scale); g.drawLine(widthall/2+scale,height/2-scale,widthall/2,height/2-scale); g.drawLine(widthall/2,height/2-scale,widthall/2,height/2); g.setColor(c); pointX1=(int)(widthall/2+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY1=(int)(height/2-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); pointX2=(int)(widthall/2+Double.valueOf(txtMakeRule[0].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY2=(int)(height/2-Double.valueOf(txtMakeRule[3].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); //txtMakeRule[i] g.drawLine(pointX1,pointY1,pointX2,pointY2); pointX1=(int)(widthall/2+Double.valueOf(txtMakeRule[0].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY1=(int)(height/2-Double.valueOf(txtMakeRule[3].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); pointX2=(int)(widthall/2+Double.valueOf(txtMakeRule[0].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[1].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY2=(int)(height/2-Double.valueOf(txtMakeRule[3].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[4].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); g.drawLine(pointX1,pointY1,pointX2,pointY2); pointX1=(int)(widthall/2+Double.valueOf(txtMakeRule[0].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[1].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY1=(int)(height/2-Double.valueOf(txtMakeRule[3].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[4].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); pointX2=(int)(widthall/2+Double.valueOf(txtMakeRule[1].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY2=(int)(height/2-Double.valueOf(txtMakeRule[4].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); g.drawLine(pointX1,pointY1,pointX2,pointY2); pointX1=(int)(widthall/2+Double.valueOf(txtMakeRule[1].getText()).doubleValue()*scale+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY1=(int)(height/2-Double.valueOf(txtMakeRule[4].getText()).doubleValue()*scale-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); pointX2=(int)(widthall/2+Double.valueOf(txtMakeRule[2].getText()).doubleValue()); pointY2=(int)(height/2-Double.valueOf(txtMakeRule[5].getText()).doubleValue()); g.drawLine(pointX1,pointY1,pointX2,pointY2); } void this_windowClosing(WindowEvent e) { this.hide(); this.dispose(); } public void actionPerformed(ActionEvent e) {//,Object arg){ //if ( e instanceof TextField) {//instanceof实例 //String button = (String) arg; //for (int i=0;i<6;i++){ // if (e.equals(txtMakeRule[i])){ // repaint(); // } //} // return true; //} // else{return false;} } void txtMakeP_textValueChanged(TextEvent e) { repaint(); } void btnDel_actionPerformed(ActionEvent e) { for(int i=0;i<6;i++){ txtMakeRule[i].setText(""); } txtMakeP.setText(""); } void btnAccept_actionPerformed(ActionEvent e) { for (int i=0;i<6;i++){ localIFSControl.txtRule[i][localIFSControl.NoRule].setText(txtMakeRule[i].getText()); } localIFSControl.txtP[localIFSControl.NoRule].setText(txtMakeP.getText()); this.hide(); this.dispose(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -