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

📄 seatsgui2.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 SeatsGUI2 extends JFrame{
	private Display myDisplay;
	private Shell myShell;
	private GC gc;
	private Label myLabel1;
	private final int noOfRow;
	private final int noOfColumn;
	private final EconomyClass myEconomyClass1;
	private final String[][] out;
	private final String[][] out1;
	public SeatsGUI2(EconomyClass myEconomyClass)
	{
		this.myEconomyClass1=myEconomyClass;
		noOfRow=myEconomyClass.getNoOfRow();
		noOfColumn=myEconomyClass.getNoOfColumn();
		out=new String[noOfRow][noOfColumn];
		out1=new String[noOfRow][noOfColumn];
		for(int i=0;i<noOfRow;i++)
		{
			for(int j=0;j<noOfColumn;j++)
			{
				out[i][j]=String.valueOf(myEconomyClass.getMyseats(i, j).getNoOfRow()+1)
				         +" "+String.valueOf((char)('A'+myEconomyClass.getMyseats(i, j).getNoOfColumn()))
				         +" "+myEconomyClass.getMyseats(i, j).getType();
			}
		}
		for(int i=0;i<noOfRow;i++)
		{
			for(int j=0;j<noOfColumn;j++)
			{
				if(myEconomyClass.getMyseats(i, j).isIsBooked())
				{
					out1[i][j]="booked";
				}
				else
				{
					out1[i][j]="not booked";
				}
			}
		}
		
		myDisplay=new Display();
		myShell=new Shell(myDisplay,SWT.CLOSE|SWT.RESIZE);
		myShell.setSize(800, 800);
		myShell.setText("Seats");
		myLabel1=new Label(myShell,SWT.BORDER);
		myLabel1.setBounds(10, 10, 550, 30);
		myLabel1.setText("Economy Class 2 Seats:");
		myShell.addPaintListener(new PaintListener()
		{
			public void paintControl(PaintEvent event)
			{
				gc=event.gc;
				myShell.addMouseListener(new MouseListener()
				{
					public void mouseDown(MouseEvent e)
					{
						boolean change=true;
						if(e.x<10) change = false;
						if(e.y<40) change = false;
						int value_x=(e.x-45)/80;
						int value_y=(e.y-45)/38;
						if(value_x<0) change=false;
						if(value_x>noOfColumn-1) change=false;
						if(value_y<0) change=false;
						if(value_y>noOfRow-1) change=false;
						if(change){
							if(myEconomyClass1.getMyseats(value_y, value_x).isIsBooked()){
								out1[value_y][value_x]="not booked";
								myEconomyClass1.getMyseats(value_y,value_x).setIsBooked(false);
								System.out.println((myEconomyClass1.getMyseats(value_y, value_x).getNoOfRow()+1)+" "+((char)('A'+myEconomyClass1.getMyseats(value_y, value_x).getNoOfColumn())+" "+myEconomyClass1.getMyseats(value_y, value_x).getType())+" is not booked ");
							}
							else if(!myEconomyClass1.getMyseats(value_y, value_x).isIsBooked())
							{
								out1[value_y][value_x]="booked";
								myEconomyClass1.getMyseats(value_y, value_x).setIsBooked(true);
								System.out.println((myEconomyClass1.getMyseats(value_y, value_x).getNoOfRow()+1)+" "+((char)('A'+myEconomyClass1.getMyseats(value_y, value_x).getNoOfColumn())+" "+myEconomyClass1.getMyseats(value_y, value_x).getType())+" is  booked ");
							}
						}
						myShell.redraw();
					}
					
					public void mouseUp(MouseEvent e)
					{
					}
					public void mouseDoubleClick(MouseEvent e)
					{
					}
				});
				for(int i=0;i<noOfRow;i++)
				{
					for(int j=0;j<noOfColumn;j++)
					{
						gc.drawRectangle(j*80+45,i*38+45, 75, 35);
						gc.drawString(out[i][j], 3+j*80+45, 3+i*38+45);
						gc.drawString(out1[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 + -