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

📄 seatsgui1.java

📁 飞机自动订票系统有JAVA SWING 实现gui 主要包括booking system seats, class 等
💻 JAVA
字号:
import org.eclipse.swt.*;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.graphics.*;
import javax.swing.*;
public class SeatsGUI1 extends JFrame{
	private Display myDisplay;
	private Shell myShell;
	private GC gc;
	private Label myLabel3;
	private final FirstClass myFirstClass;
	private final String[][] out4;
	private final String[][] out5;
	private final int noOfRow2;
	private final int noOfColumn2;
	public SeatsGUI1(FirstClass firstClass1)
	{
		this.myFirstClass=firstClass1;
		this.noOfRow2=myFirstClass.getNoOfRow();
		this.noOfColumn2=myFirstClass.getNoOfColumn();
		out4=new String[noOfRow2][noOfColumn2];
		out5=new String[noOfRow2][noOfColumn2];
		for(int i=0;i<noOfRow2;i++)
		{
			for(int j=0;j<noOfColumn2;j++)
			{
				out4[i][j]=String.valueOf(myFirstClass.getMyseats(i, j).getNoOfRow()+1)
				         +" "+String.valueOf((char)('A'+myFirstClass.getMyseats(i, j).getNoOfColumn()))
				         +" "+myFirstClass.getMyseats(i, j).getType();
				if(myFirstClass.getMyseats(i, j).isHasLaptops())
					out4[i][j]+=" LP ";
			}
		}
		for(int i=0;i<noOfRow2;i++)
		{
			for(int j=0;j<noOfColumn2;j++)
			{
				if(myFirstClass.getMyseats(i, j).isIsBooked())
				{
					out5[i][j]="booked";
				}
				else
				{
					out5[i][j]="not booked";
				}
			}
		}
		myDisplay=new Display();
		myShell=new Shell(myDisplay,SWT.CLOSE|SWT.RESIZE);
		myShell.setSize(800, 800);
		myShell.setText("Seats");
		myLabel3=new Label(myShell,SWT.BORDER);
		myLabel3.setBounds(10, 10, 500, 30);
		myLabel3.setText("First Class Seats:");
		myShell.addPaintListener(new PaintListener()
		{
			public void paintControl(PaintEvent event)
			{
				gc=event.gc;
				myShell.addMouseListener(new MouseListener()
				{
					public void mouseDown(MouseEvent e)
					{
						boolean change1=true;
						if(e.x<10) change1 = false;
						if(e.y<40) change1 = false;
						int value_x2=(e.x-45)/80;
						int value_y2=(e.y-45)/38;
						if(value_x2<0) change1=false;
						if(value_x2>noOfColumn2-1) change1=false;
						if(value_y2<0) change1=false;
						if(value_y2>noOfRow2-1) change1=false;
						if(change1){
							if(myFirstClass.getMyseats(value_y2, value_x2).isIsBooked()){
								out5[value_y2][value_x2]="not booked";
								myFirstClass.getMyseats(value_y2,value_x2).setIsBooked(false);
								System.out.println((myFirstClass.getMyseats(value_y2, value_x2).getNoOfRow()+1)+" "+((char)('A'+myFirstClass.getMyseats(value_y2, value_x2).getNoOfColumn())+" "+myFirstClass.getMyseats(value_y2, value_x2).getType())+" "+"laptop: "+myFirstClass.getMyseats(value_y2,value_x2).isHasLaptops()+" is not booked ");
							}
							else if(!myFirstClass.getMyseats(value_y2, value_x2).isIsBooked())
							{
								out5[value_y2][value_x2]="booked";
								myFirstClass.getMyseats(value_y2, value_x2).setIsBooked(true);
								System.out.println((myFirstClass.getMyseats(value_y2, value_x2).getNoOfRow()+1)+" "+((char)('A'+myFirstClass.getMyseats(value_y2, value_x2).getNoOfColumn())+" "+myFirstClass.getMyseats(value_y2, value_x2).getType())+" "+"laptop: "+myFirstClass.getMyseats(value_y2,value_x2).isHasLaptops()+" is booked ");
							}
						}
						myShell.redraw();
					}
					
					public void mouseUp(MouseEvent e)
					{
						
					}
					public void mouseDoubleClick(MouseEvent e)
					{
						
					}
				});
				for(int i=0;i<noOfRow2;i++)
				{
					for(int j=0;j<noOfColumn2;j++)
					{
						gc.drawRectangle(j*80+45, i*38+45, 75, 35);
						gc.drawString(out4[i][j], 3+j*80+45, 3+i*38+45);
						gc.drawString(out5[i][j], 10+j*80+45, 15+i*38+45);
					}
				}
			}
		});
		
		myShell.open();
		while(!myShell.isDisposed())
		{
			if(!myDisplay.readAndDispatch())
				myDisplay.sleep();
		}
		myDisplay.dispose();
	}
}

⌨️ 快捷键说明

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