初学J2ME时,看过的好文章(三)

J2ME游戏开发实例讲解 文章来源:J2ME开发网一、序言  昨天在网上闲逛,发现一篇讲解用delphi实现华容道游戏的文章,颇受启发.于是,产生了将华容道游戏移植到手机中去的冲动.现在手机游戏琳琅满目,不一而足,华容道的实现版本也很多.正巧不久前笔者对J2ME下了一番功夫,正想借这个机会小试牛刀。选用J2ME的原因还有一个就是目前Java开发大行其到,无线增殖业务迅猛发展,J2ME的应用日渐活跃起来,也希望我的这篇文章能 阅读详情
 

因为在MIDP手机编程中,没有控制台的概念,所以所有的MIDP手机软件都必须有自己的界面,下面就熟悉一下MIDP的界面类体系。

       首先说明的是,MIDP的标准界面类都位于javax.microedition.lcdui包中,使用时一定要记得引入。

       在界面体系中,所以可以直接显示的界面类都继承自同一个父类——Displayable。根据是否能直接操作屏幕,以及是否和屏幕尺寸相关,MIDP的界面类分为两大类:

1、  高级用户界面——和屏幕大小无关,不能直接操作屏幕

高级用户界面类可以不需要修改就可以在所有支持Java的手机上显示,不同的手机显示方式会有所不同,但功能均可以正常使用。特别适合做对于界面要求不高的手机应用软件。

高级用户界面中的类又分为两个部分:

l         容器类

容器类是指直接或者是间接继承自Displayable,可以直接在屏幕上显示的类。这些类都有一个统一的父类——Screen类,其他的都是实现的容器类,包括以下几个:

u       Alert——提示框

u       Form——窗体

u       List——列表框

u       TextBox——文本盒,多行文本框

以上这些类除了Screen类以外,都代表一类界面,在实际的开发过程中,即可以直接使用(只使用其对象)也可以使用继承。 

l         控件类

控件类是指那些不能在屏幕上直接显示,必须添加到容器类(注:MIDP中的所有控件类均只能添加到Form中)才可以显示的类。这些类也有一个统一的父类Item类,其它的都是实现的控件类,包括以下几个:

u       ChoiceGroup——选择框,包括单选和多选

u       DateFiled——日期文本框

u       Gauge——进度条

u       ImageItem——图片项目

u       StringItem——可变字符串项目

u       TextFiled——单行文本框

在MIDP2.0中,新增两个控件:

u       CustomItem——个性化项目,可以实现自己的控件

u       Spacer——空白 

在实际的使用中,根据界面的需要,选择合适的控件种类,然后添加到Form中进行显示。 

2、  低级用户界面——和屏幕大小相关,可以直接操作屏幕

低级用户界面可以让程序员直接操作界面,例如可以在屏幕上方便的绘制图片、文字以及基本的图形等,可以在手机中表现复杂的界面,所以很适合进行手机游戏以及移动证券之类的软件开发。但是低级界面一般和屏幕大小关系比较密切,所以在不同的手机型号之间实现的时候,一般需要进行移植。

低级用户界面主要包括两个类:

l         Canvas——手机画布

该类代表手机屏幕,包含获得屏幕属性的一系列方法、事件处理的方法,以及最核心的paint绘制方法等。在MIDP2.0中该类有一个子类——GameCanvas。

l         Graphics——画笔

系统所有的绘制动作都通过该类实现,包含一般的绘制方法、设置字体或颜色的方法以及一些技巧操作的方法等。

              低级用户界面可以理解为使用Graphics这样一个画笔类在Canvas上进行绘制。

       当然还有一个在高级用户界面和低级用户界面都可以使用的类——Command(软按钮类),使用该类可以在界面中实现软按钮的功能。

       在整个界面体系中,除了以上最核心的类以外,还包含一些其他的辅助功能,主要分为如下几种:

1、  高级用户事件处理体系

因为高级用户界面的事件处理采用了监听器(Listener)模式,所以在API中只提供了几个接口:

l         CommandListener

处理软按钮(Command)事件。

l         ItemStateListener

处理控件(Item)状态改变事件。

l         ItemCommandListener——MIDP2.0新增

处理和控件相关的软按钮事件。 

2、  低级用户界面辅助类

在实际使用低级用户界面中,经常用到图片、字体等,这些也在界面体系中被实现成具体的类,分别是:

l         Font——字体类

l         Image——图片类

由于J2ME对J2SE进行了大量的简化,所以颜色没有实现成具体的类,而只是支持RGB格式的表示而已。

       以上系统的介绍了MIDP的界面类体系,希望能使您对于界面类结构有更加深刻的认识。不足之处请积极指正!

J2ME平台下的走迷宫小游戏开发实战 J2ME(Java 2 Platform, Micro Edition)是为移动设备和嵌入式设备特别设计的一个Java平台版本。它的设计目标是让Java应用可以在有限的硬件资源下运行,这使得J2ME成为了早期智能手机和功能手机游戏开发的重要平台。在本章中,我们将首先对J2ME平台进行整体介绍,包括它的架构、核心组件以及它与Java其他版本的关系。随后,我们会探讨J2ME在游戏开发领域的应用,以及它如何适应移动设备的特定需求。## 1.1 J2ME架构概览。 阅读详情

相关推荐

J2ME平台下的手机游戏开发实战:大富翁游戏源代码解析

J2ME(Java 2 Platform, Micro Edition)是为移动设备设计的Java平台版本。它允许开发者创建适用于各种手机和其他嵌入式设备的应用程序,特别是通过无线连接访问网络信息的应用程序。J2ME(Java 2 Platform, Micro Edition)为移动设备提供了一套GUI组件,允许开发者创建图形化的用户界面。在本节中,我们将介绍J2ME中GUI组件的分类,以及设计原则和用户体验的重要性。Canvas类是J2ME中用于自定义绘图的核心类。它允许开发者覆盖。

weixin_33431149的博客 1046

深入理解MIDP的界面类体系

深入理解MIDP的界面类体系作者:陈跃峰Email:cqucyf@gmail.com        因为在MIDP手机编程中,没有控制台的概念,所以所有的MIDP手机软件都必须有自己的界面,下面就熟悉一下MIDP的界面类体系。       首先说明的是,MIDP的标准界面类都位于javax.microedition.lcdui包中,使用时一定要记得引入。       在界面体系中,所以可以直接显示

爪哇米工作室陈跃峰的移动开发博客 4102

javax.microedition.jar

文件结构 javax/microedition/io/ javax/microedition/lcdui/ javax/microedition/midlet/ javax/microedition/rms/

J2ME 之 RMS

持久数据和记录管理系统( Record Management System,简称 RMS)  我在前面的文章中曾经提到过, MIDP提供在移动设备上存储持久数据的支持,并且 MID简表还特意规定兼容的移动设备必须提供至少 8KB的非动态内存用于数据存储的用途,时式上,大多数的 MIDP Java设备提供的空间比这要求多得多。这就允许一个midlet充份利用应用程序的持久数据。对于有 Java 2标

evening424的专栏 1291

Jetson Orin NX深度学习环境配置全攻略:从JetPack到PyTorch避坑指南

本文提供Jetson Orin NX深度学习环境配置的完整避坑指南。重点讲解如何正确利用JetPack SDK作为系统基石,使用Miniforge管理Python环境,并安装与CUDA版本严格匹配的PyTorch特供版本。通过详细的步骤和验证方法,帮助开发者在ARM架构的嵌入式平台上高效搭建稳定的AI开发工作站。

yolo5detector的博客 272

STM32硬件SPI驱动W5500以太网模块全流程(附避坑指南)

本文详细介绍了STM32硬件SPI驱动W5500以太网模块的全流程,包括硬件架构设计、SPI接口选型、官方驱动移植、网络协议栈配置与优化等关键步骤。通过实战案例和性能对比数据,帮助开发者快速实现稳定高效的网络连接,特别提供了常见问题排查指南和性能调优技巧。

weixin_29194693的博客 268

轻量级用户界面工具包(LWUIT)简介

 一般来说,Java ME 让我们能够编写可在支持该平台的众多小型设备中移植的应用程序。虽然基本功能在所有受支持的设备上表现良好,但用户界面仍然是困扰开发者的一个常见问题。由于 javax.microedition.lcdui (Java ME 中的主要用户界面 API)的本地实现在不同设备上差异非常大,因此我们无法保证应用程序拥有设备无关和统一的界面外观。不统一的

Lightweight User Interface Toolkit 1266

200SMART PLC时间不准?手把手教你用MCGS触摸屏实现自动校时(附完整代码)

本文针对西门子200SMART PLC时钟不准的常见问题,提供了一套基于MCGS触摸屏的自动校时解决方案。文章详细阐述了时钟偏差的根源、时间同步方案的技术选型,并手把手指导如何配置MCGS与PLC的通信,以及编写完整的PLC时间读取、转换与设置代码,最终实现稳定可靠的自动时间同步功能。

jupyter5notebook的博客 452

Java 2 Micro Edition[J2ME]

<!--google_ad_client = "pub-7058131363132249";/* 468x15, 创建于 08-6-3 */google_ad_slot = "4187223796";google_ad_width = 468;google_ad_height = 15;//--> <script type="text/javascript"src=

Tisty的兵工厂--新Blog:http://www.UbuntuSky.cn 1979

Arduino安装图文教程:小白也能轻松上手

手把手带你完成Arduino安装全过程,无论你是编程新手还是硬件小白,都能快速搭建开发环境。结合arduino安装教程与实操步骤,避开常见错误,让创作即刻启程。

weixin_35509395的博客 1106

第 3 天:Actor 是什么?创建你的第一个游戏对象!

本文详细介绍 Actor 在 Unreal Engine 5 中的作用,并通过 C++ 创建你的第一个游戏对象。你将学习 Actor 的生命周期(BeginPlay、Tick)、如何添加组件(Static Mesh),并让 Actor 在游戏世界中运作。同时提供 常见问题解决方案,助你快速上手 UE5 C++ 开发!🎮 跟随本教程,构建属于你的第一个游戏对象!

m0_37643873的博客 2629

j2me学习心得

真正开始学习J2ME应该算是从暑假7月份开始。到现在屈指算来也不过是三个月的时间。现在我把中间的一些学习经历写出来,和大家一起分享学习j2me的一些经验和感悟。   在学习J2ME之前,一些认识和不认识的朋友不止一次地说J2ME是JAVA里最难的一块。因为你的代码是运行在有限的资源中,必须尽最大可能地被优化,所以你必须具有很高的编程素养。不过我还是要坚持学习J2ME,也许是出于我对手机游戏软件这一

hydrogen2005的专栏 1398

fluent二维叶型仿真_Fluent案例4【自然对流】

自然对流来了!!江苏的高校好多开学了,我啥时候才能开学另外,刚才看了何同学的Mac Pro深度体验视频,我好酸/(ㄒoㄒ)/~~好想拥有一台跑仿真那种sou~sou~sou~的机器。废话不多说了,进入正题!案例题目:一个矩形空腔内有500K恒温小球,矩形空腔充斥空气,边界条件绝热,模型尺寸如下,试模拟空腔内空气流动状态做出温度变化图。(尺寸大小懒得写了,在建模部分里有)操作平台:workbench...

weixin_39724469的博客 3670

精通J2ME中的Hello World

       初学java的时候一般都写过如下的HelloWorld程序,今天我准备详细讲述一下J2ME中的HelloWorld。无论你是J2ME开发高手还是新手都应该读读这篇文章,我想它会对你有所帮助!      在javax.microedition.midlet包中定义了一个非常重要的类MIDlet,所有J2ME的应用程序都必须扩展这个类,只有这样才可以使得应用管理软件(Applicat

mingjava的专栏 2317

ICLR 2025 | MambaPEFT: 探索针对Mamba的参数高效微调方法

通过利用海量数据构建大型模型,基于Transformer的模型生态系统已逐步确立。参数高效微调(PEFT)是一项至关重要的技术,它能以最低成本将这些模型应用于下游任务,同时实现高效的性能表现。最近,基于状态空间模型(SSM)的Mamba模型作为Transformer的潜在替代方案受到了广泛关注。尽管已经提出了许多基于Mamba的大规模模型,但如何高效地将预训练的Mamba模型应用于下游任务仍有待研究。在本文中,作者对适用于Mamba的PEFT方法展开了探索性分析。

小白学视觉 326

反光柱定位算法中的移动机器人姿态计算原理-经典三边定位最小二乘法计算定位-直接法计算定位

(二)计算姿态方式是我们已经通过最小二乘得到了小车在地图中的位置或者是雷达在地图中的位置,又因为我们知道雷达与小车的安装坐标,所以可以求解出一其中一个坐标的知量,通过小车在地图中坐标与雷达在地图中坐标可以得到一条向量,通过计算向量在地图中的角度就能得到姿态了。与最小二乘三边测量法相比,新算法在动态调整、优化过程和鲁棒性方面优势明显,尤其适合动态环境下的机器人定位,而最小二乘三边测量法在动态复杂环境中精度相对较低。(一)与(二)的区别主要是在计算姿态上的算法不同。经典三边定位最小二乘法 (法一)

苏凯的博客 1139

初学J2ME的时,看过的好文章(一)

J2ME程序开发全方位基础讲解汇总(1) J2ME中暂时无法完成的功能      列一些J2ME中暂时无法完成的功能,希望大家能积极补充:   1、在手机中不更改代码实现移植,主要指游戏。   2、动态修改按钮文字。   3、在Canvas上接受中文输入。   4、

冯小卫 842

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

JDK、J2EE、J2SE、J2ME的区别

1.JDK 是Javadevelopmenttoolkit,相当于是Java的库函数,是编译,运行java程序的工具包。 J2EE是Java2enterpriseedition是Java的一种企业版用于企业级的应用服务开发 J2SE是Java2standardedition是Java的标准版,用于标准的应用开发 J2ME是Java2MicroEdition是Java的微型版,常用于手机上的...

gaofengyan的博客 1864

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

初学J2ME时,看过的好文章(二)

用惯的J2ME高级UI而还没有接触过低级UI的developer一定不会习惯跟Canvas的初夜!因为他没有Form那么多可以触摸到风情万种,也没有Item的独特风味,有的只是一个只画笔一个画布,一些只有名字的事件响应方法,更奇怪的事情是你不能手动的调用paint()去做你想做的

冯小卫 793

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

J2ME移动开发,菜鸟指南(转)

要进行J2ME的开发,首先必须要建立开发的平台,而在开发的平台选择上,我来介绍3条路。 1:功能比较全的平台JBUILDER; 搭建这个平台,我们必需要的材料有:JBUILDER 7 或 JBUILDER 8 ,BORLAND ...

cuankuangzhong6373的博客 1114

MVC模式在j2me项目中的应用(一)

MVC模式在j2me项目中的应用(一)作者:FavoYang       Email:favoyang@yahoo.com 欢迎交流Keywords:MVC j2me UI模式 内容提要:本文简要的介绍了MVC模式的思想,并分析了MVC模式的利弊,最后结合MIDP平台给出几种常见的MVC模式实践。相信此文对任何一个使用midp平台的商务程序开发者都或多或少的有所帮助。 版权声明:本文同时发表在ww

alikeboy的专栏 3177

【J2me 2D 游戏开发系列】◣Himi游戏开发启蒙教程◢Java零基础学习J2me游戏开发全过程!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/j2me-2/774.html          ☞ 点击订阅 ☜ 本博客最新动态!及时将最新博文通知您!Himi从写博客的最早开始就是Android游戏开发相关的,其实那么很多童鞋也知道Himi是做Java-J2me/Kjava出身,所以不少童鞋

李华明Himi 5475

J2ME RMS的学习笔记 (转载)

RMS,全称Record Management System,是J2ME应用程序进行持久性存储的唯一途径。在手机应用中常常作为得分记录、游戏信息存储等的工具使用。通过两篇文章的学习,我大致掌握了RMS的开发。第一篇文章《RMS概念解析与使用指南》从一些Q&A中介绍了RMS所涉及的基本概念,然后结合数据库的概念介绍了javax.microedition.rms包里面的四个接口、一个类、五个异常(文中

ghfseawindy的专栏 3914
上一篇: 初学J2ME时,看过的好文章(二)
下一篇: 初学J2ME时,看过的好文章(四)
coding_or_coded
博客等级 码龄16年 216粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值