import java.awt.*; import javax.swing.*; import java.awt.event.*; //窗口布局类 class WindowGrids extends JFrame implements ActionListener { JButton buttonarray[][]; WindowGrids(String s) //构造方法 { super(s); Container contenetPane = this.getContentPane(); GridLayout grid = new GridLayout(6,11,2,8); contenetPane.setLayout(grid); //设置窗口的布局 buttonarray = new JButton[6][11]; //创建按钮对象 for (int i = 0;i < 6;i++) { for (int j = 0;j < 11;j++) { if (i == 5 && j == 10) { buttonarray[i][j] = new JButton("清零"); buttonarray[i][j].addActionListener(this); contenetPane.add(buttonarray[i][j]); } else { buttonarray[i][j] = new JButton("0"); //为每个实例开辟内存空间 buttonarray[i][j].addActionListener(this); contenetPane.add(buttonarray[i][j]); } } } contenetPane.validate(); setBounds(200,200,800,400); //x,y,kuan,gao setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } public void actionPerformed(ActionEvent e) { int row; int col; if (e.getSource() == buttonarray[5][10]) //如果为清零按钮 { for (int i = 0;i < 6;i++) { for (int j = 0;j < 11;j++) { if (i != 6 && j != 11) { buttonarray[i][j].setText("0"); } } } buttonarray[5][10].setText("清零"); } for (int i = 0;i < 5;i++) //逐一搜索查看对应的按钮是否发生事件 { for (int j = 0;j < 10;j++) { if (e.getSource() == buttonarray[i][j]) { if(buttonarray[i][j].getText() == "0") //反向显示 { buttonarray[i][j].setText("1"); actionshow(i,j); break; } else { buttonarray[i][j].setText("0"); actionshow(i,j); break; } } } } } public void actionshow(int rows,int cols) //显示更新的组件值 { int i; int j; int temp; int rows_sum = 0; int cols_sum = 0; for (i = 0;i < 5;i++) //扫描每行的和 { for (j = 0;j < 10;j++) { temp = Integer.parseInt(buttonarray[i][j].getText()); rows_sum = rows_sum + temp; } rows_sum = rows_sum % 2; //进行模2运算 buttonarray[i][j].setText(""+rows_sum); //这一行最后一个按钮的显示 rows_sum = 0; //还原值 } for (i = 0;i < 10;i++) //扫描每列的和 { for (j = 0;j < 5;j++) { temp = Integer.parseInt(buttonarray[j][i].getText()); cols_sum = cols_sum + temp; } cols_sum = cols_sum % 2; //进行模2运算 buttonarray[j][i].setText(""+cols_sum); cols_sum = 0; } } } class ParityCheck { public static void main(String args[]) { WindowGrids win = new WindowGrids("奇偶校验测试"); } }
java 偶校验_基偶校验 JAVA
最新推荐文章于 2022-02-25 10:23:18 发布