📄 useroptions.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 + -