J2ME高级界面实现页面之间的跳转

原创 2007年09月27日 16:27:00
package test;

import java.io.IOException;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

/** *//**
 * 
 * 
@author leilu
 * 
 
*/

public class MainPage extends MIDlet implements CommandListener
...{
    
// m_cmdExit
    private Command m_cmdExit = null;

    
// m_cmdOK
    private Command m_cmdOK = null;

    
// Display
    private Display display = null;

    
// list
    private List list = null;

    
//
    private Image icon = null;

    
public MainPage()
    
...{
        
super();

    }


    
protected void startApp() throws MIDletStateChangeException
    
...{
        
// display
        display = Display.getDisplay(this);
        
// m_cmdExit
        m_cmdExit = new Command("Exit", Command.EXIT, 1);
        
// m_cmdOK
        m_cmdOK = new Command("OK", Command.OK, 1);
        
// 创建图像
        try
        
...{
            icon 
= Image.createImage("/Icon.png");
        }

        
catch (IOException e)
        
...{
            
// TODO Auto-generated catch block
            e.printStackTrace();
        }

        
// list
        list = new List("主界面", List.EXCLUSIVE);
        list.append(
"FirstPage", icon);
        list.append(
"Secondpage", icon);
        
// 增加按钮
        list.addCommand(m_cmdExit);
        list.addCommand(m_cmdOK);
        
// 监听
        list.setCommandListener(this);
        
// 显示
        display.setCurrent(list);

    }


    
protected void pauseApp()
    
...{

    }


    
protected void destroyApp(boolean arg0) throws MIDletStateChangeException
    
...{
    }


    
public void commandAction(Command c, Displayable d)
    
...{
        String cmd 
= c.getLabel();
        
if (cmd == "OK")
        
...{
            
switch (((List) d).getSelectedIndex())
            
...{
            
case 0:
                FirstPage first 
= new FirstPage(display, list);
                display.setCurrent(first);
                
break;
            
case 1:
                SecondPage second 
= new SecondPage(display, list);
                display.setCurrent(second);
            
default:
                
break;
            }

        }

        
else if (cmd == "Exit")
        
...{
            
try
            
...{
                destroyApp(
false);
            }

            
catch (MIDletStateChangeException e)
            
...{
                e.printStackTrace();
            }

            notifyDestroyed();

        }

    }


}

 
package test;

import java.io.IOException;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.Ticker;

public class FirstPage extends Form implements CommandListener
...{
    
// TICKER_TEXT滚动文字
    private static final String TICKER_TEXT = "这是一个滚动条的例子正在滚动,可以一直滚动除非有触发了停止事件";

    
// display
    private Display display;
    
//
    private Ticker ticker = null;

    
// m_cmdBack
    private Command m_cmdBack = null;
    
//list
    private List list= null;

    
public FirstPage(Display display,Displayable list)
    
...{
        
super("FirstPage");
        
//
        this.list = (List)list;
        
this.display= display;
        m_cmdBack 
= new Command("Back", Command.BACK, 1);
        ticker 
= new Ticker(TICKER_TEXT);
        
this.setTicker(ticker);
        
//增加图片
        Image icon = null;
        
try
        
...{
            icon 
= Image.createImage("/Java.png");
        }

        
catch (IOException e)
        
...{
            e.printStackTrace();
        }

        
this.append(icon);
        
//增加按钮
        this.addCommand(m_cmdBack);
        
this.setCommandListener(this);
        
//显示FirstPage
        display.setCurrent(this);

    }


    
public void commandAction(Command c, Displayable d)
    
...{
        
if (m_cmdBack == c)
        
...{
            display.setCurrent(list);
        }


    }


}

 

package test;

import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.TextField;
public class SecondPage extends Form implements CommandListener
...{
    
// display
    private Display display;

    
// Back
    private Command m_cmdBack;

    
// Alert
    private Command m_cmdAlert;

    
// list
    private List list = null;

    
public SecondPage(Display display, Displayable list)
    
...{
        
super("Second");
        
this.display = display;
        
this.list = (List) list;
        
//
        m_cmdBack = new Command("Back", Command.BACK, 1);
        m_cmdAlert 
= new Command("Alert", Command.SCREEN, 1);
        
this.append(new TextField("E_mail""lulei@163.com"15,
                TextField.EMAILADDR));
        
// 增加按钮
        this.addCommand(m_cmdBack);
        
this.addCommand(m_cmdAlert);
        
this.setCommandListener(this);
        
// 显示Form屏幕
        display.setCurrent(this);
    }


    
public void commandAction(Command c, Displayable d)
    
...{
        
if (m_cmdAlert == c)
        
...{
            
// 创建要显示的图标

            
// 创建一个Alert屏幕对象,要显示的图标为 img
            Alert info = new Alert("This is a Alert Example");
            info.setType(AlertType.INFO);

            
// 设置显示时间
            
// info.setTimeout(Alert.FOREVER);
            info.setTimeout(3000);
            
// 显示Alert屏幕
            display.setCurrent(info);
        }

        
if (m_cmdBack == c)
        
...{
            display.setCurrent(list);
        }


    }


}

J2ME里界面的相互跳转

import java.util.Stack;import javax.microedition.lcdui.Display;import javax.microedition.lcdui.Displ...
  • linyiteng1220
  • linyiteng1220
  • 2007年09月20日 09:23
  • 1613

Android显示提示信息,实现两个界面之间的跳转

1.新建一个Android工程,然后新建一个Android activity,整体目录如图所示: 2.activity_main.xml里面的代码如下: ...
  • qq_29656961
  • qq_29656961
  • 2017年09月13日 19:37
  • 285

Android开发——界面间的跳转

Activity间的跳转有两种方式: 1:直
  • Happy__EveryDay
  • Happy__EveryDay
  • 2014年07月22日 01:11
  • 796

mfc多页面之间的跳转实现

假设现在我有两个界面A和B,那么我想通过点击A页面的button控件实现跳转到B页面则只需在A界面中双击button控件(也可以通过点击类向导)创建button的函数,然后在button的函数中写上以...
  • u014387696
  • u014387696
  • 2017年06月10日 21:43
  • 454

利用同一个Activity界面实现二个不同的界面之间的跳转

先看图,再描述 上图的效果中,我们看到是由三个界面组成:点我界面, 设置界面, 自动返回界面组成,并实现了checkBox保存状态和弹出dialog.但是实际上,只用了点我界面和设置界面(和自动返回...
  • willba
  • willba
  • 2017年06月08日 15:02
  • 476

安卓--页面跳转,不同窗体传递数据

安卓四大组件都是非常重要的知识,今天来说Activity 。老规矩,用一张图来介绍今天的内容。 图片看不清的话可以右键新窗口打开 一,概述 Activity 是 Android 四大组件...
  • jin870132
  • jin870132
  • 2015年04月20日 22:15
  • 1890

安卓页面之间实现页面的跳转,并实现数据的传输

响应函数的事件 在一个界面输入文字,然后跳转到另一界面依然显示 login  表示内部类监听 public void login(View view){ Intent inten...
  • Mr_gxj
  • Mr_gxj
  • 2016年10月05日 12:36
  • 1453

如何优雅的进行页面间的跳转

在你的开发过程中,是否遇到过如下的需求: 在tableView类型的展示列表中,点击每个cell中人物头像都可以跳转到人物详情,可参见微博中的头像,同理包括转发、评论按钮、各种链接及linkca...
  • u014640208
  • u014640208
  • 2015年07月25日 08:30
  • 685

如何在Qt程序实现简单的窗口跳转

窗口1 : Widget namespace Ui {     class Widget;     class Form; } 构造函数加入:connect(btn1,SIGNAL(cli...
  • hsl17
  • hsl17
  • 2011年09月01日 12:31
  • 8525

点击多个URL跳转多个不同界面使用一个Activity实现

新手往往需要多个Activity,浪费资源,只是参数的内容不同而已,完全可以使用一个Activity实现。 第一个ActivitygoActivity("http://api.haieco.com:...
  • xiyangyang8110
  • xiyangyang8110
  • 2017年08月22日 10:30
  • 142
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2ME高级界面实现页面之间的跳转
举报原因:
原因补充:

(最多只允许输入30个字)