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

📄 useroptions.java

📁 StarShip Battle 2004 game The Developing Mobile Phone Applications With J2ME Technology course provi
💻 JAVA
字号:
import javax.microedition.lcdui.*;
import java.io.*;


public class UserOptions implements CommandListener {
	
	private Form inputForm;
	
	private TextField name;
	private TextField alias;
	
	private Display deviceDisplay;
	
	private Image okImage;
	private Alert updateAlert;
	private Displayable mainMenu;
	
	private String nameAlertText = "Your name has changed";
	private String aliasAlertText = "Your alias has changed";
	private String saveAlertText = "Date Saved!";
	
	private Command saveData;
	private OptionsRS optionStore;
	
	public UserOptions(Display d)
	{
		name = new TextField("UserName", null, 25, TextField.ANY);
		alias = new TextField("Alias", null, 25, TextField.ANY);
		
		inputForm = new Form("User Information");
		inputForm.append(name);
		inputForm.append(alias);
		
		deviceDisplay = d;
		
		try
		{
			okImage = Image.createImage("/dukeok8.png");
		}
		catch(IOException io)
		{
			System.out.println("Unable to load image");
		}
		
		updateAlert = new Alert("Data Changed", null, okImage, AlertType.CONFIRMATION);
		updateAlert.setTimeout(Alert.FOREVER);
		//inputForm.setItemStateListener(this);
		saveData = new Command("Save", Command.OK, 1);
		inputForm.addCommand(saveData);
		inputForm.setCommandListener(this);
		initializeOptions();
	}
	
	public void registerMenu(Displayable mm)
	{
		mainMenu = mm;
	}
	
	public void commandAction(Command c, Displayable d)
	{
		if(c == saveData)
		{
			updateAlert.setString(saveAlertText);
			showAlertUpdate();
		}
	}
	
	
	
/*	public void itemStateChanged(Item i)
	{
		if(i==name)
		{
			updateAlert.setString(nameAlertText);
		} else {
			updateAlert.setString(aliasAlertText);
		}
		showAlertUpdate();
	}*/
	
	private void showAlertUpdate(){
		saveOptions();
		deviceDisplay.setCurrent(updateAlert, mainMenu);
	}
	
	public void showUserOpt(){
		retrieveOptions();
		deviceDisplay.setCurrent(inputForm);
	}
	
	public void initializeOptions(){
		optionStore = new OptionsRS();
		if(!optionStore.recordExists()){
			name.setString("Player 1");
			alias.setString("Player 2");
			saveOptions();
		}
	}
	
	public void saveOptions(){
		try{
			ByteArrayOutputStream bOptions = new ByteArrayOutputStream();
			DataOutputStream dOptions = new DataOutputStream(bOptions);
			dOptions.writeUTF(name.getString());
			dOptions.writeUTF(alias.getString());
			optionStore.writeOption(bOptions.toByteArray());
			dOptions.close();
			bOptions.close();
		}catch(IOException ioe){
			System.out.println("Problem saving data");
		}
	}
	
	public void retrieveOptions(){
		try{
			ByteArrayInputStream bOptions = new ByteArrayInputStream(optionStore.readOption());
			DataInputStream dOptions = new DataInputStream(bOptions);
			name.setString(dOptions.readUTF());
			alias.setString(dOptions.readUTF());
			dOptions.close();
			bOptions.close();
		}catch(IOException ioe){
			System.out.println("Problem retrieving data");
		}
	}
}

⌨️ 快捷键说明

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