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

📄 bitfield.java

📁 并口 设置 查看程序 java 源程序及执行程序
💻 JAVA
字号:
//Bit Fieldimport java.awt.*;import java.awt.event.*;import javax.swing.*;public class BitField extends JTextField{  private static final int howManyFieldsAre=18;  private static  int fieldWidth=12; //Width of the field image  private static  int fieldHeight=15; //Height of the field image  public static boolean fieldsOnPortViewerArrayValue[] = new boolean[howManyFieldsAre];  public static boolean fieldsOnPortViewerArrayIsActive[] = new boolean[howManyFieldsAre];  private int thisFieldNumber;  private UpdateField updateField = new UpdateField();  private static final int fieldUpdateDelay = 100;    public BitField(int coordinateXOnParent, int coordinateYOnParent, int thisFieldNumber, String toolTip){    InitField();      setThisFieldNumber(thisFieldNumber);    setFieldLocation(coordinateXOnParent,coordinateYOnParent);    setToolTipText(toolTip);  }  private void InitField(){    setPreferredSize(new Dimension(fieldWidth,fieldHeight));        setOpaque(false);    addMouseListener(new MouseFunctions());    setDisabledTextColor(Color.BLACK);    setFont(new Font("Arial",Font.BOLD,12));    setEditable(false);    setFieldValue();        updateField.start();  }  private class MouseFunctions extends MouseAdapter{    public void mousePressed(MouseEvent e){      if (e.getButton()==MouseEvent.BUTTON1){        if (fieldsOnPortViewerArrayIsActive[thisFieldNumber]==true) fieldsOnPortViewerArrayValue[thisFieldNumber]=(!fieldsOnPortViewerArrayValue[thisFieldNumber]);      }    }  }    public void setThisFieldNumber(int thisFieldNumber){    this.thisFieldNumber=thisFieldNumber;  }  public void setFieldLocation(int coordinateXOnParent,int coordinateYOnParent){      setBounds(coordinateXOnParent,coordinateYOnParent,fieldWidth,fieldHeight);  }  public void setFieldValue(){    switch(thisFieldNumber){      case 1:case 11:case 14:case 17: setText(""+((fieldsOnPortViewerArrayValue[thisFieldNumber]==false)?1:0)); break;       default: setText(""+((fieldsOnPortViewerArrayValue[thisFieldNumber]==false)?0:1)); break;    }  }    private class UpdateField extends Thread{    boolean fieldTemp;    public void run(){      fieldTemp = fieldsOnPortViewerArrayValue[thisFieldNumber];        while(true){        if (fieldTemp != fieldsOnPortViewerArrayValue[thisFieldNumber]){          setFieldValue();          fieldTemp = fieldsOnPortViewerArrayValue[thisFieldNumber];        }        if (thisFieldNumber==0){          if (fieldsOnPortViewerArrayValue[0]==false) dataOutActives();             if (fieldsOnPortViewerArrayValue[0]==true) dataInActives();           }        try{Thread.sleep(fieldUpdateDelay);}catch(InterruptedException e){}        }    }  }    private void dataInActives(){    fieldsOnPortViewerArrayIsActive[0] = true;    fieldsOnPortViewerArrayIsActive[1] = true;    fieldsOnPortViewerArrayIsActive[2] = false;    fieldsOnPortViewerArrayIsActive[3] = false;    fieldsOnPortViewerArrayIsActive[4] = false;    fieldsOnPortViewerArrayIsActive[5] = false;    fieldsOnPortViewerArrayIsActive[6] = false;    fieldsOnPortViewerArrayIsActive[7] = false;    fieldsOnPortViewerArrayIsActive[8] = false;    fieldsOnPortViewerArrayIsActive[9] = false;    fieldsOnPortViewerArrayIsActive[10] = false;    fieldsOnPortViewerArrayIsActive[11] = false;    fieldsOnPortViewerArrayIsActive[12] = false;    fieldsOnPortViewerArrayIsActive[13] = false;    fieldsOnPortViewerArrayIsActive[14] = true;    fieldsOnPortViewerArrayIsActive[15] = false;    fieldsOnPortViewerArrayIsActive[16] = true;    fieldsOnPortViewerArrayIsActive[17] = true;  }  private void dataOutActives(){    fieldsOnPortViewerArrayIsActive[0] = true;    fieldsOnPortViewerArrayIsActive[1] = true;    fieldsOnPortViewerArrayIsActive[2] = true;    fieldsOnPortViewerArrayIsActive[3] = true;    fieldsOnPortViewerArrayIsActive[4] = true;    fieldsOnPortViewerArrayIsActive[5] = true;    fieldsOnPortViewerArrayIsActive[6] = true;    fieldsOnPortViewerArrayIsActive[7] = true;    fieldsOnPortViewerArrayIsActive[8] = true;    fieldsOnPortViewerArrayIsActive[9] = true;    fieldsOnPortViewerArrayIsActive[10] = false;    fieldsOnPortViewerArrayIsActive[11] = false;    fieldsOnPortViewerArrayIsActive[12] = false;    fieldsOnPortViewerArrayIsActive[13] = false;    fieldsOnPortViewerArrayIsActive[14] = true;    fieldsOnPortViewerArrayIsActive[15] = false;    fieldsOnPortViewerArrayIsActive[16] = true;    fieldsOnPortViewerArrayIsActive[17] = true;  }  }

⌨️ 快捷键说明

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