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

📄 button.java

📁 这是我们专业的课程设计
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		stop2.setContentAreaFilled(false);

		stop3 = new JButton(bugstop2);
		stop3.setMaximumSize(new Dimension(200, 40));
		stop3.setPreferredSize(new Dimension(200, 40));
		stop3.setPressedIcon(bugstop3);
		stop3.setRolloverIcon(bugstop1);
		stop3.setBorderPainted(false);
		stop3.setContentAreaFilled(false);
		
		stop4 = new JButton(bugstop2);
		stop4.setMaximumSize(new Dimension(200, 40));
		stop4.setPreferredSize(new Dimension(200, 40));
		stop4.setPressedIcon(bugstop3);
		stop4.setRolloverIcon(bugstop1);
		stop4.setBorderPainted(false);
		stop4.setContentAreaFilled(false);

		JPanel sp = new JPanel(new GridLayout(1, 4, 5, 5));
		sp.setBackground(Color.WHITE);
		sp.add(stop1);
		sp.add(stop2);
		sp.add(stop3);
		sp.add(stop4);

		JPanel bp = new JPanel(new BorderLayout(5, 5));
		bp.setBackground(Color.WHITE);
		bp.add(sp, BorderLayout.NORTH);
		bp.add(p, BorderLayout.SOUTH);

		// 为按钮添加监听
		ButtonListener bt = new ButtonListener();
		up1.addActionListener(bt);
		down1.addActionListener(bt);
		up2.addActionListener(bt);
		down2.addActionListener(bt);
		up3.addActionListener(bt);
		down3.addActionListener(bt);
		up4.addActionListener(bt);
		down4.addActionListener(bt);
		open1.addActionListener(bt);
		close1.addActionListener(bt);
		open2.addActionListener(bt);
		close2.addActionListener(bt);
		open3.addActionListener(bt);
		close3.addActionListener(bt);
		open4.addActionListener(bt);
		close4.addActionListener(bt);
		start1.addActionListener(bt);
		end1.addActionListener(bt);
		start2.addActionListener(bt);
		end2.addActionListener(bt);
		start3.addActionListener(bt);
		end3.addActionListener(bt);
		start4.addActionListener(bt);
		end4.addActionListener(bt);
		pinfor.addActionListener(bt);
		exit.addActionListener(bt);
		stop1.addActionListener(bt);
		stop2.addActionListener(bt);
		stop3.addActionListener(bt);
		stop4.addActionListener(bt);
		
		JPanel p0 = new JPanel(new BorderLayout(5, 0));
		JPanel p00 = new JPanel();
		
		p00.add(exit);
		p00.add(pinfor);

		p0.add(p00, BorderLayout.NORTH);
		p0.add(bp, BorderLayout.SOUTH);

		container.add(p0, BorderLayout.SOUTH);

	}

	class ButtonListener implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			
			// 按钮行为定义为以AdministratorCommandData类的一个实例向服务器端
			// 发送数据,以实现控制电梯以最高优先级按照管理员的指令运行
			
			AdministratorCommandData a = new AdministratorCommandData();
			
			//增加对于4号电梯的控制
			if (e.getSource() == up1) {
				a.button = 1;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == down1) {
				a.button = 2;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == up2) {
				a.button = 1;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == down2) {
				a.button = 2;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == up3) {
				a.button = 1;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == down3) {
				a.button = 2;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == up4) {
				a.button = 1;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == down4) {
				a.button = 2;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == open1) {
				a.button = 3;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == close1) {
				a.button = 4;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == open2) {
				a.button = 3;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == close2) {
				a.button = 4;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == open3) {
				a.button = 3;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == close3) {
				a.button = 4;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == open4) {
				a.button = 3;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == close4) {
				a.button = 4;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == start1) {
				a.button = 5;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == end1) {
				a.button = 6;
				a.elevator = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == start2) {
				a.button = 5;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == end2) {
				a.button = 6;
				a.elevator = 1;
				admin.SendAdminData(a);
			} else if (e.getSource() == start3) {
				a.button = 5;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == end3) {
				a.button = 6;
				a.elevator = 2;
				admin.SendAdminData(a);
			} else if (e.getSource() == start4) {
				a.button = 5;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == end4) {
				a.button = 6;
				a.elevator = 3;
				admin.SendAdminData(a);
			} else if (e.getSource() == exit) {
				admin.Close();
				System.exit(0);
			} else if (e.getSource() == stop1) {
				a.elevator = 0;
				a.button = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == stop2) {
				a.elevator = 1;
				a.button = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == stop3) {
				a.elevator = 2;
				a.button = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == stop4) {
				a.elevator = 3;
				a.button = 0;
				admin.SendAdminData(a);
			} else if (e.getSource() == pinfor) {
				admin.GetFile();

			}
		}

	}

	public class ElevationSimulationAnimate extends ElevatorSimulation
			implements ActionListener {
		protected Timer timer = new Timer(500, this);

		StateData sd;

		ElevatorData[] elevator;

		public ElevationSimulationAnimate() {
			timer.start();
			
			StateData sd = new StateData();
			sd.floor = new FloorData();

		}

		public void actionPerformed(ActionEvent e) {
			
			//这里有大量的关于每一个电梯的活动操作,采用时钟Timer驱动
			
			sd = admin.getData();//捕获数据语句
			
			while (sd == null) {
				sd = admin.getData();
				try {
					Thread.sleep(50);
				}catch (Exception ex){}
			}
			
			int floor1 = sd.elevator[0].floor;
			int floor2 = sd.elevator[1].floor;
			int floor3 = sd.elevator[2].floor;
			int floor4 = sd.elevator[3].floor;
			
			int directionone = sd.elevator[0].direction;
			int directiontwo = sd.elevator[1].direction;
			int directionthree = sd.elevator[2].direction;
			int directionfour = sd.elevator[3].direction;
			
			double openpercent1 = sd.elevator[0].openedPercent;
			double openpercent2 = sd.elevator[1].openedPercent;
			double openpercent3 = sd.elevator[2].openedPercent;
			double openpercent4 = sd.elevator[3].openedPercent;
			
			//控制台监测输出
			System.out.println("Elevator position : "+floor1+" "+floor2+
					" "+floor3+" "+floor4);
			System.out.println("Open percent : "+openpercent1+" "+openpercent2+" "+
					openpercent3+" "+openpercent4);
			//

			if (directionone == 1 || directionone == 2 || directionone == -2
					|| directionone == 0) {
				setFloor1(floor1, "up", openpercent1);
				repaint();
			} else if (directionone == -1 || directionone == 2
					|| directionone == -2 || directionone == 0) {
				setFloor1(floor1, "down", openpercent1);
				repaint();
			}
			if (directiontwo == 1 || directiontwo == 2
					|| directiontwo == -2 || directiontwo == 0) {
				setFloor2(floor2, "up", openpercent2);
				repaint();
			} else if (directiontwo == -1 || directiontwo == 2
					|| directiontwo == -2 || directiontwo == 0) {
				setFloor2(floor2, "down", openpercent2);
				repaint();
			}
			if (directionthree == 1 || directionthree == 2
					|| directionthree == -2 || directionthree == 0) {
				setFloor3(floor3, "up", openpercent3);
				repaint();
			} else if (directionthree == -1 || directionthree == 2
					|| directionthree == -2 || directionthree == 0) {
				setFloor3(floor3, "down", openpercent3);
				repaint();

			}
			if (directionfour == 1 || directionfour == 2
					|| directionfour == -2 || directionfour == 0) {
				setFloor4(floor4, "up", openpercent4);
				repaint();
			} else if (directionfour == -1 || directionfour == 2
					|| directionfour == -2 || directionfour== 0) {
				setFloor4(floor4, "down", openpercent4);
				repaint();

			}

		}

	}
}

⌨️ 快捷键说明

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