高层用户界面设计.ppt
《高层用户界面设计.ppt》由会员分享,可在线阅读,更多相关《高层用户界面设计.ppt(101页珍藏版)》请在三一办公上搜索。
1、广东科贸信息工程 张雷,J2ME程序设计,高层用户界面设计,广东科贸信息工程 张雷,三章、高层用户界面设计,学习内容:1、用户界面基本元素2、全屏界面编程3、item组件使用技巧j2meAPI地址:http:/,广东科贸信息工程 张雷,学习目标和要求,了解J2ME中用于电子商务程序的高层用户界面设计。需要掌握:1、高层界面前景和背景元素的构成及使用。2、高层事件的传递和处理3、高层事件中特殊的Command,广东科贸信息工程 张雷,什么高层用户界面?,什么高层用户界面?Screen继承下来的这一组被称为高层用户界面功能:主要完成电子商务方面的程序。看下图。,广东科贸信息工程 张雷,广东科贸信息
2、工程 张雷,3-1 用户界面的基本元素,在学习高层之前,我们来学习下用户界面的基本元素1、display:屏幕输入、输出设备的管理器2、Displayable:屏幕背景的基础3、Ticker:滚动字幕4、Item:屏幕上的组件,广东科贸信息工程 张雷,3-1-1 Display,Display:屏幕输出和输入设备的管理器。作用:MIDlet通常由若干个屏幕组成,每个屏幕包含若干个组件元素,那么程序的运行依靠屏幕之间、组件之间的调度和切换。Display完成这个工作。,广东科贸信息工程 张雷,用法:1、定义一个全局的变量:Private Display display;2、在MIDlet的构造方
3、法(构造器)中获得 实例。Display=Display.getDisplay(this);注释:方法getDisplay(MIDlet m);的参数是MIDlet类型。,广东科贸信息工程 张雷,3、在starApp()中设置MIDlet的初始屏幕。display.setCurrent(mainScreen);注释:mainScreen是一个Screen类及其子类(FormTextBoxAlertList)的一个对象。,广东科贸信息工程 张雷,Display方法,setCurrent()方法:setCurrent(Displayable dis)把参数的屏幕设置为当前屏幕,其他屏幕则处于背景状
4、态。注释:Displayable是所有屏幕的基类。例如1:Display display;:Form form;:display.setCurrent(form);,广东科贸信息工程 张雷,例如2:private Display display;:private TextBox mainScreen=null;:display.setCurrent(mainScreen);,广东科贸信息工程 张雷,setCurrent()针对Alert屏幕,Alert屏幕是个特殊的屏幕:特点:它在显示一段时间后会自动退出。注意:所以如果需要使用SetCurrent()将Alert一个对象设置前景屏幕时,必须给
5、出Alert消失后的屏幕。例如::Display display;:TextBox first;:Alert alert;display.setCurrent(alert,first);设置在alert 消失后显示first屏幕。,广东科贸信息工程 张雷,实验1,实验内容:1、创建一个form画板对象,form1,一个textbox画板对象tb1.分别初始化对象。2、创建display对象,初始化,并将form1设置为midlet应用成程序的初始屏幕。,广东科贸信息工程 张雷,getCurrent();获取当前处于前景的屏幕。问题:返回值是什么类型?例如::Private Display di
6、splay;:Form form1,form2;:form2=display.getCurrent(form1);,广东科贸信息工程 张雷,getDisplay();作用:获得当前MIDlet的Display的一个对象(实例)。特点:1、在MIDlet中至少被调用一次。2、每次调用都是得到同一个Display对象(实例)。,广东科贸信息工程 张雷,3-1-2屏幕背景的基础-Displayable,类Displayable定义:是所有构成背景屏幕类的基类。主要包括:Screen 高层用户界面Canvas底层用户界面,广东科贸信息工程 张雷,基本功能,Displayable界面的基本功能:1、一个
7、标题栏。2、一个滚动字幕。3、一个命令侦听器(CommandListener)4、多个命令的容器。注意:每个Displayable只有一个 命令侦听器,如果设置了多个,只有最后一个有效。,广东科贸信息工程 张雷,3-1-3滚动字幕-Ticker,有什么用?为屏幕设置显示滚动字幕如何使用:Form firstscreen;:Ticker ticker1=new Ticker(“这里显示滚动字幕”);:firstscreen=new Form(“第一屏幕”);:firstscreen.setTicker(ticker1);firstscreen中的滚动字幕就是ticker1了.,广东科贸信息工程
8、张雷,Ticker方法,1、构造方法:Tocker(String string);参数说明:string 是滚动字幕中的内容.2、setString(String string):设置滚动字幕中的内容 例如:ticker1.setString(“欢迎参观”);3、getString():获得滚动字幕中的内容。,广东科贸信息工程 张雷,实验2,实验内容:在实验1的基础上,创建一个滚动字幕ticker,初始化该对象,并将该对象显示在form1中,通过display对象将form1显示在手机屏幕中。,广东科贸信息工程 张雷,代码3.2,广东科贸信息工程 张雷,广东科贸信息工程 张雷,广东科贸信息工程
9、 张雷,3-1-4 Form上的组件-Item,是什么:是所有可以在屏幕上显示的组件的基类。象什么:类似于我们在j2se中的窗口界面的组件,例如:JTextFieldJButtonJlabel等等属性:抽象类,具体组件由其子类完成。子类有哪些:下图。,广东科贸信息工程 张雷,广东科贸信息工程 张雷,Item在使用中的特点,如何在屏幕中加入组件:以TextField组件为例:1:Form form;屏幕2:TextField tf1,tf2;组件3:tf1=new TextField(“用户名”,”,10,TextField.ANY);4:tf2=new TextField(“电邮”,”,30,
10、TextField.EMAILADD);5:form.append(tf1);将组件加入到屏幕中6:form.append(tf2);将组件加入到屏幕中,广东科贸信息工程 张雷,构造方法(构造器):TextField(String str1,String Str2,int x,TextField.ANY);注释:TextField构造方法共有4个参数,第一个为静态显示的内容 第二个为需要用户填写的内容 第三个为文本宽度 第四个为显示的内容属性,广东科贸信息工程 张雷,实验3,实验内容:根据实验1,创建两个textfield组件,将其加入到form1画板中。通过display显示出来。,广东科贸
11、信息工程 张雷,3-1-6命令按钮-Command,首先,我们来回忆下,j2se如何处理事件步骤:1、定义一个类,来实现接口ActionListener class hand implements ActionListener2、监听者对象向事件源对象注册Button but=new Button();but.addActionListener(hand);3、监听者调用相应的接口方法,来处理这样的事件。actionPerformed(ActionEvent e),广东科贸信息工程 张雷,在j2me中如何处理事件?J2ME中的事件处理工具Command.步骤如下:1、生成的MIDlet子类必须
12、实现CommandListener,ItemCommandListener例如:public class generalItemExample extends MIDlet implements CommandListener,ItemCommandListener,广东科贸信息工程 张雷,2、创建命令对象Command tf1command,exitcommand;3、初始化命令对象:exitcommand=new Command(“退出”,Command.EXIT,2);:tf1command=new Command(“Edit1”,Command.ITEM,3);4、将命令加入到Item
13、或Screen中,进行监听。:text1.addCommand(tf1command);:form.addCommand(exitcommand);,广东科贸信息工程 张雷,5、在设置侦听对象为本屏幕:form.setCommandListener(this);6、通过方法commandAction()处理事件:注意:处理Displayable和Item对象分别有不同的commandAction()方法。Public void commandAction(Command cmd,Item item)Public void commandAction(Command cmd,Displayabl
14、e screen),广东科贸信息工程 张雷,命令构造方法,Command(String label,int commandType,int priority):label:标签.是该命令在屏幕中的显示内容.种类:长标签短标签.如果需要使用长标签,则使用下面的构造方法.Command(String shortLabel,String longLabel,int commandType,int priority),广东科贸信息工程 张雷,Command的类型:,广东科贸信息工程 张雷,命令按钮的优先级,构造方法的最后一个参数.1为最高级别,数字越大级别越低.,广东科贸信息工程 张雷,实验4,实验目
15、的:熟练掌握DisplayTickerItem,已经Command的使用。实验内容:1、设计两个画板,要求实现在两个屏幕之间可以顺利切换。,广东科贸信息工程 张雷,3-2高层用户界面设计-全屏界面编程,高层用户界面设计Screen包括4个子类.针对不同的需求分为四种。1、TextBox2、Alert3、List4、Form(表单)这四个类的编程,屏幕都占据了整个手机屏幕,所以叫做全屏界面编程。下面我们逐个学习。,广东科贸信息工程 张雷,3-2-1 TextBox-制作输入屏幕,TextBox是什么:一个可以用于文本输入的屏幕类。有什么作用:可以允许用户输入姓名、电话、电邮、密码等文本信息,通常
16、作为文本编辑器。,广东科贸信息工程 张雷,TextBox方法,1、构造方法(构造器、构造函数):Public TextBox(String title,String text,int maxsize,int constraints)参数说明:Title:是这个屏幕的标题。Text:文本区域初始化字符串Maxsize:指文本区域中最大可容纳的字符数,必 须为大于0的整数。,广东科贸信息工程 张雷,Constraints,Constraints:约束性参数。例如:其值为TextField.NUMBER时,只可以输入数字(0到9),这个时候在文本区域中只能接受数字,如果输入的不满足约束,则出现异常。
17、例如:其值为TextField.ANY时,代表TextBox中接受任何输入。Constraints的参数值:必须是TextField类中定义的几个输入约束类型,广东科贸信息工程 张雷,TextField约束参数表,广东科贸信息工程 张雷,构造方法使用实例,构造方法实例::Display display;:TextBox tbmMain=new TextBox(“”,”,255,TextField.ANY);:display=Display.getDisplay(this);:display.setCurrent(tbmMain);,广东科贸信息工程 张雷,2、文本处理方法,2、文本处理方法:T
18、extBox中文本处理的方法主要包括:设置文本1)、setString(String text)2)、setChars(char data,int offset,int length)说明:置换指定位置的字符或字符串,data为要置换的内容,offset代表从这个位置开始置换,length代表要置换多少字符例如::String str=“abcd”;:tbmMain.setChars(str.toCharArray(),0,str.length();,广东科贸信息工程 张雷,获得输入文本3)、public String getString();4)、public int getChars(ch
19、ar data)说明:上面这个使用起来有点麻烦,但功能强大。,广东科贸信息工程 张雷,插入文本(insert)5)、public void insert(char data,int offset,int length,int position)6)、public void insert(String src,int position);删除文本:delete()7)、public void delete(int offset,int length)说明:TextBox我们就介绍到这里,其他内容有时间大家自己研究下。,广东科贸信息工程 张雷,3-2-2Alert 设计警告/信息提示屏幕,Aler
20、t有什么特性:警告/提示性屏幕。类似对话框。特点:具有自动消除机制.Display专门为Alert设计的setCurrent()方法setCurrent(Alert alert,Displayable nextDisplayable);,广东科贸信息工程 张雷,Alert方法,1、构造方法:public Alert(Stringtitle,StringalertText,ImagealertImage,AlertTypealertType)参数说明:Title:标题,可以为空alertText:警告/提示的内容alertImage:可以使用一个图片,可以为空,广东科贸信息工程 张雷,alert
21、Type:警告类型。表3。2 报警类型,广东科贸信息工程 张雷,2、setTimeout(int x)作用:设置Alert在屏幕上停留的时间(毫秒),广东科贸信息工程 张雷,3、setCommandListener(Displayable dis)作用:设置命令侦听器,监听当前的命令。在使用Alert时注意:不要使用这个方法,否则,Alert屏幕将长期存在。,广东科贸信息工程 张雷,Alert 中的命令和侦听器,Alert 中拥有一个自带的命令Public static final Command DISMISS_COMMAND;特点:1、当Alert被创建时,这个命令就被创建了.2、不可以在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高层 用户界面 设计

链接地址:https://www.31ppt.com/p-6357888.html