本文来自:http://blog.csdn.net/hellogv/ ,转载必须注明出处!以上第一幅图是窗体切换特效之一;第二幅图是控件切换特效之一
以下给出设置特效的代码,这些代码同样来自Sample例子中:
-
-
packagecom.sun.lwuit.uidemo;
-
importcom.sun.lwuit.Button;
-
importcom.sun.lwuit.ButtonGroup;
-
importcom.sun.lwuit.CheckBox;
-
importcom.sun.lwuit.Command;
-
importcom.sun.lwuit.Component;
-
importcom.sun.lwuit.Container;
-
importcom.sun.lwuit.Dialog;
-
importcom.sun.lwuit.Display;
-
importcom.sun.lwuit.Form;
-
importcom.sun.lwuit.Label;
-
importcom.sun.lwuit.M3G;
-
importcom.sun.lwuit.RadioButton;
-
importcom.sun.lwuit.TextArea;
-
importcom.sun.lwuit.TextField;
-
importcom.sun.lwuit.animations.CommonTransitions;
-
importcom.sun.lwuit.animations.Transition;
-
importcom.sun.lwuit.animations.Transition3D;
-
importcom.sun.lwuit.events.ActionEvent;
-
importcom.sun.lwuit.events.ActionListener;
-
importcom.sun.lwuit.layouts.BoxLayout;
-
importcom.sun.lwuit.layouts.FlowLayout;
-
importcom.sun.lwuit.plaf.Style;
-
-
-
publicclassTransitionDemoextendsDemo{
-
-
-
privatestaticintselectedIndex=0;
-
publicStringgetName(){
-
return"Transitions";
- }
-
protectedStringgetHelp(){
-
return"Transitionsappearwhenswitchingfromoneformtothenext,atransitioncanbebound"+
-
"totheoperationofexitingorenteringthescreen.Therearedefaulttransitionsinthetoolkit"+
-
"andcustomtransitionsareeasytowrite.";
- }
-
privateRadioButtoncreateRB(Stringlabel,ButtonGroupg,Formf){
-
RadioButtonb=newRadioButton(label);
- Styles=b.getStyle();
-
s.setMargin(0,0,0,0);
-
s.setBgTransparency(70);
- g.add(b);
- f.addComponent(b);
-
returnb;
- }
-
protectedvoidexecute(finalFormf){
-
f.setLayout(newBoxLayout(BoxLayout.Y_AXIS));
-
Labeltitle=newLabel("Pleaseselectatransitiontype:");
-
title.getStyle().setMargin(0,0,0,0);
-
title.getStyle().setBgTransparency(70);
- f.addComponent(title);
-
finalButtonGroupradioButtonGroup=newButtonGroup();
-
createRB("SlideHorizontal",radioButtonGroup,f);
-
createRB("SlideVertical",radioButtonGroup,f);
-
createRB("Fade",radioButtonGroup,f);
-
if(M3G.isM3GSupported()){
-
createRB("Rotate",radioButtonGroup,f);
-
createRB("FlyIn",radioButtonGroup,f);
-
createRB("Cube",radioButtonGroup,f);
-
createRB("StaticRotation",radioButtonGroup,f);
-
createRB("SwingTop",radioButtonGroup,f);
-
createRB("SwingBottom",radioButtonGroup,f);
- }
- radioButtonGroup.setSelected(selectedIndex);
-
finalTextFieldspeed=newTextField("500");
- speed.setConstraint(TextArea.NUMERIC);
-
speed.setInputModeOrder(newString[]{"123"});
-
f.addComponent(createPair("Speed",speed));
-
finalFormdestination=newForm("Destination");
-
destination.addComponent(newLabel("Thisisthetransitiondestination..."));
-
destination.addCommand(newCommand("Back"){
-
publicvoidactionPerformed(ActionEventevt){
- f.show();
- }
- });
-
finalCheckBoxhighQuality=newCheckBox("HighQuality");
- highQuality.setSelected(!Display.getInstance().isLightMode());
-
highQuality.getStyle().setBgTransparency(0);
- f.addComponent(highQuality);
-
highQuality.addActionListener(newActionListener(){
-
publicvoidactionPerformed(ActionEventevt){
-
if(Display.getInstance().isLightMode()){
-
Dialog.show("Warning","Thedeviceseemsabitweakforhighqualityrendering,"+
-
"usingthismodemightcrashyourdevice.","OK",null);
- }
- }
- });
-
finalButtonupdateButton=newButton("PreviewTransition");
-
finalButtonapplyButton=newButton("ApplyTransition");
-
finalButtonapplyMenu=newButton("ApplyToMenu");
-
finalButtonapplyComponents=newButton("ApplyToComponents");
- updateButton.setAlignment(Button.CENTER);
-
updateButton.getStyle().setPadding(5,5,7,7);
- applyButton.setAlignment(Button.CENTER);
-
applyButton.getStyle().setPadding(5,5,7,7);
-
ActionListenerlistener=newActionListener(){
-
publicvoidactionPerformed(ActionEventev){
-
intrunSpeed=Integer.parseInt(speed.getText());
-
Transitionin,out;
-
switch(radioButtonGroup.getSelectedIndex()){
-
case0:{
-
out=CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL,false,runSpeed);
-
in=CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL,true,runSpeed);
-
break;
- }
-
case1:{
-
out=CommonTransitions.createSlide(CommonTransitions.SLIDE_VERTICAL,false,runSpeed);
-
in=CommonTransitions.createSlide(CommonTransitions.SLIDE_VERTICAL,true,runSpeed);
-
break;
- }
-
case2:{
- out=CommonTransitions.createFade(runSpeed);
- in=CommonTransitions.createFade(runSpeed);
-
break;
- }
-
case3:{
-
out=Transition3D.createRotation(runSpeed,true);
-
in=Transition3D.createRotation(runSpeed,false);
-
break;
- }
-
case4:{
- out=Transition3D.createFlyIn(runSpeed);
- in=Transition3D.createFlyIn(runSpeed);
-
break;
- }
-
case5:{
-
out=Transition3D.createCube(runSpeed,true);
-
in=Transition3D.createCube(runSpeed,false);
-
break;
- }
-
case6:{
-
out=Transition3D.createStaticRotation(runSpeed,true);
-
in=Transition3D.createStaticRotation(runSpeed,false);
-
break;
- }
-
case7:{
- out=Transition3D.createSwingIn(runSpeed);
- in=out;
-
break;
- }
-
default:{
-
out=Transition3D.createSwingIn(runSpeed,false);
- in=out;
-
break;
- }
- }
- selectedIndex=radioButtonGroup.getSelectedIndex();
-
if(outinstanceofTransition3D){
- ((Transition3D)out).setHighQualityMode(highQuality.isSelected());
- ((Transition3D)in).setHighQualityMode(highQuality.isSelected());
- }
-
if(updateButton==ev.getSource()){
-
- f.setTransitionOutAnimator(out);
- f.setTransitionInAnimator(in);
- destination.show();
- }
-
elseif(applyButton==ev.getSource()){
-
-
f.setTransitionOutAnimator(null);
-
f.setTransitionInAnimator(null);
- UIDemoMIDlet.setTransition(in,out);
- }
-
-
-
elseif(applyMenu==ev.getSource()){
-
- UIDemoMIDlet.setMenuTransition(in,out);
- }
-
-
-
elseif(applyComponents==ev.getSource()){
-
-
- UIDemoMIDlet.setComponentTransition(in);
- }
-
-
- }
- };
- updateButton.addActionListener(listener);
- applyButton.addActionListener(listener);
- applyMenu.addActionListener(listener);
- applyComponents.addActionListener(listener);
-
ContainerbuttonPanel=newContainer(newFlowLayout(Component.CENTER));
- buttonPanel.addComponent(updateButton);
- f.addComponent(buttonPanel);
-
buttonPanel=newContainer(newFlowLayout(Component.CENTER));
- buttonPanel.addComponent(applyButton);
- f.addComponent(buttonPanel);
-
buttonPanel=newContainer(newFlowLayout(Component.CENTER));
- buttonPanel.addComponent(applyMenu);
- f.addComponent(buttonPanel);
-
buttonPanel=newContainer(newFlowLayout(Component.CENTER));
- buttonPanel.addComponent(applyComponents);
- f.addComponent(buttonPanel);
- }
- }
分享到:
相关推荐
j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api
《J2ME手机游戏实例之--俄罗斯方块》 Java Micro Edition(J2ME)是Java平台的一个子集,主要用于嵌入式设备和移动设备,如早期的智能手机。本实例将探讨如何使用J2ME开发经典游戏——俄罗斯方块。在手机上实现这个...
【J2ME游戏源码---泡泡堂】是一个适合初学者和有一定基础的开发者研究的游戏项目,主要用于学习J2ME(Java Micro Edition)平台上的游戏开发技术。J2ME是Java平台的一个子集,专为资源有限的移动设备如手机、PDA等...
在“JAVA游戏编程之三----j2me 手机游戏入门开发--俄罗斯方块_4_增加消除行声音”这个主题中,我们将学习如何在已有的游戏基础上加入消除行时的声音反馈,让游戏体验更加生动有趣。 首先,了解基本的J2ME编程是必要...
J2ME_Loader-1.7.7-open-release.apk
**J2ME游戏开发概述** Java 2 Micro Edition(J2ME)是Java平台...通过研究这个游戏的源码,开发者可以深入理解J2ME的图形绘制、用户交互、游戏逻辑实现以及资源管理等多个方面,对于提升J2ME游戏开发技能非常有帮助。
终于找到了一个能在J2ME 上面用的了 J2me AES 加密解密 crypto-aes
j2me_wireless_toolkit-2_2-windows 由于附件不能超过10M,只好分两部分发了
3. **用户界面**:J2ME提供了轻量级用户界面(LWUIT)或基本的用户界面组件,如Canvas。在这个扫雷游戏中,可能使用了Canvas来绘制游戏界面,实现鼠标点击和触摸屏事件的处理。 4. **逻辑控制**:扫雷游戏的逻辑...
作者:雷神 QQ:38929568 QQ群:28048051JAVA游戏编程(满) 28047782(满) 50761834(忙) 31572546(新) 手机游戏开发职业群51871468(,非从事手机开发者勿进!欢迎测试策划美工程序) <br>声明:本人...
安卓手机上的j2me模拟器 可导入本地jar文件 可模拟Java手机(比如塞班)用的软件 可以体验以前的手机操作
【标题】"j2me聊天室开发--群聊"涉及的是使用Java 2 Micro Edition (J2ME)技术创建一个支持多用户群聊功能的移动应用。J2ME是Java平台的一个子集,主要用于嵌入式设备和移动设备,如手机和平板电脑。这个项目的...
《J2ME重装机兵学习--附原代码和发部文件》是一个关于移动设备上游戏开发的学习资源,特别关注于使用Java 2 Micro Edition (J2ME)平台开发名为“重装机兵”的游戏。J2ME是Java平台的一个子集,主要用于嵌入式系统和...
3. **代码借鉴**: 作为初学者的项目,这个游戏可能包含了一些简单的实现逻辑,比如游戏循环、碰撞检测、动画处理等,对于学习J2ME游戏开发的人来说,这些代码片段可能是有价值的。 【标签】:“midlet” 【标签】...
在移动设备技术发展初期,J2ME(Java 2 Micro Edition)是用于开发移动应用程序,尤其是手机游戏的主流平台之一。本项目是一个基于J2ME技术实现的五子棋游戏,展现了开发者对Java编程语言和移动游戏开发的基本理解。...
标题中的“J2ME编程——2种方法”指的是...这个J2ME程序实例展示了如何利用基本的GUI组件创建用户交互,并根据用户的选择动态更新UI。这对于理解和实践J2ME编程,尤其是涉及用户界面和事件处理的部分,是非常有价值的。
1. **图形用户界面(GUI)设计**:J2ME使用MIDP提供的Canvas类来绘制游戏画面。Canvas允许自定义绘图操作,可以创建游戏的背景、坦克、子弹和其他游戏元素。通过重写draw()方法,开发者可以实现游戏画面的实时更新。...
本实例将深入探讨如何使用J2ME来实现经典游戏——俄罗斯方块。这个项目适合初学者学习,因为它的代码量少,逻辑清晰,易于理解。 1. **J2ME基础** J2ME是Java平台的一个子集,主要设计用于嵌入式系统,包括手机、...
总的来说,LWUIT 1.2.1为J2ME开发者提供了一个强大且富有表现力的UI框架,虽然其大小可能不适合所有设备,但通过合理的优化和利用,可以在许多移动应用中实现令人满意的用户体验。对于那些寻求超越MIDP标准UI限制的...