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

📄 phaselistform.java

📁 这是一个Java编写的手机象棋游戏
💻 JAVA
字号:
import javax.microedition.lcdui.*;

public class PhaseListForm extends Form implements CommandListener,ItemCommandListener
{
	private Command		back,del,look,delAll,rename, send;
	private RestRecord	restRecord=null;
	private PhaseManage	phaseManage=null;
	
	private StringItem[]	stringItems=null;
	//用于标记是否在选择残局
	private	boolean		ifSelect = false;
	//调用残局时的变量定义
	private	int[][]		chess = null;
	private	ServerForm	serverForm = null;
	private Command		select = null;

	public PhaseListForm(PhaseManage pm)
	{//这个构造函数为残局管理服务
		super("残局列表");
		ifSelect = false;
		phaseManage=pm;
		restRecord=new RestRecord();
		back=new Command("Back",Command.EXIT,1);
		del=new Command("Del",Command.ITEM,1);
		delAll=new Command("DelAll",Command.ITEM,1);
		look=new Command("Look",Command.ITEM,1);
		rename = new Command("Rename",Command.ITEM,1);
		send = new Command("Send",Command.ITEM,1);
		stringItems=getItemList();
		addCommand(back);
		setCommandListener(this);
		//System.out.println("初始化RecordManage成功");
	}
	public PhaseListForm(ServerForm		s ,int[][]	chess)
	{//这个构造函数为调用残局摆擂服务
		super("选择残局");
		this.chess = chess;
		serverForm = s;
		ifSelect = true;
		restRecord=new RestRecord();
		select = new Command("Select",Command.ITEM,1);
		back=new Command("Back",Command.EXIT,1);
		stringItems=getItemList();
		addCommand(back);
		setCommandListener(this);
	}
	private StringItem[]	getItemList()
	{
		String[] recordNameList=restRecord.getPhaseList();
		int n=recordNameList.length;
		StringItem[]	items=new StringItem[n];
		for(int i=0;i<n;i++)
		{
			items[i]=new StringItem(null,recordNameList[i],Item.PLAIN);
			if(!ifSelect)
			{
				items[i].setDefaultCommand(look);
				items[i].addCommand(del);
				items[i].addCommand(delAll);
				items[i].addCommand(rename);
				items[i].addCommand(send);
			}
			else
			{
				items[i].addCommand(select);
			}
			items[i].setItemCommandListener(this);
			append(items[i]);
			append("\n");
		}
		return items;
	}
	public void commandAction(Command com,Displayable dis)
	{//在这个方法里面一定要标记出是哪个命令,防止按任意键时调用命令
		if(com == back && !ifSelect)
		{
			Chess.dis.setCurrent(phaseManage);
		}
		if(com == back && ifSelect)
		{
			Chess.dis.setCurrent(serverForm);
		}
	}
	public void commandAction(Command com,Item item)
	{
		if(com == select)
		{
			int itemNumber=0;
			for(int i=0;i<stringItems.length;i++)
			{
				if(item.equals(stringItems[i]))
				{
					itemNumber=i;
					break;
				}
			}
			//System.out.println("得到的itemNumber是:"+itemNumber);
			String phaseName=((StringItem)item).getText();
			chess = restRecord.getPhase(phaseName);
			serverForm.setChess(chess);
			Chess.dis.setCurrent(serverForm);
		}
		if(com==del)
		{
			int itemNumber=0;
			for(int i=0;i<stringItems.length;i++)
			{
				if(item.equals(stringItems[i]))
				{
					itemNumber=i;
					break;
				}
			}
			//System.out.println("得到的itemNumber是:"+itemNumber);
			String phaseName=((StringItem)item).getText();
			int flag=restRecord.delPhase(phaseName);
			if(flag==0)
			{
				//System.out.println("删除残局成功");
				delete(itemNumber);
				//System.out.println("删除StringItem成功");
			}
			else
			{
				//System.out.println("删除残局失败");
				Alert alert=new Alert("Message","删除残局失败",null,AlertType.WARNING);
				Chess.dis.setCurrent(alert, this);
			}
		}
		if(com==delAll)
		{
			int flag=restRecord.delAllPhase();
			if(flag==0)
			{
				//System.out.println("删除全部残局成功");
				deleteAll();
				//System.out.println("删除全部StringItem成功");
			}
		}
		if(com==look)
		{
			int itemNumber=0;
			for(int i=0;i<stringItems.length;i++)
			{
				if(item.equals(stringItems[i]))
				{
					itemNumber=i;
					break;
				}
			}
			//System.out.println("得到的itemNumber是:"+itemNumber);
			String phaseName=((StringItem)item).getText();
			int[][]	chess = restRecord.getPhase(phaseName);
			PhaseLookCanvas	plc = new PhaseLookCanvas(chess ,this);
			Chess.dis.setCurrent(plc);
		}
		if(com==rename)
		{
			int itemNumber=0;
			for(int i=0;i<stringItems.length;i++)
			{
				if(item.equals(stringItems[i]))
				{
					itemNumber=i;
					break;
				}
			}
			//System.out.println("得到的itemNumber是:"+itemNumber);
			StringItem	tempItem = (StringItem)item;
			PhaseRenameForm	prf = new PhaseRenameForm(tempItem,restRecord,this);
			Chess.dis.setCurrent(prf);
		}
		if(com == send)
		{
			Flash flash = new Flash(this);
			flash.sending();
			flash.startFlash();
			int itemNumber=0;
			for(int i=0;i<stringItems.length;i++)
			{
				if(item.equals(stringItems[i]))
				{
					itemNumber=i;
					break;
				}
			}
			//System.out.println("得到的itemNumber是:"+itemNumber);
			String phaseName=((StringItem)item).getText();
			chess = restRecord.getPhase(phaseName);
			new ClientChess(this, chess, flash);
		}
	}
};

⌨️ 快捷键说明

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