//执行类
public class Test extends MIDlet{
private Display display;
private TextCanvas tcanvas;
public Test() {
// TODO Auto-generated constructor stub
display=Display.getDisplay(this);
tcanvas=new TextCanvas(this);
}
protected void startApp() throws MIDletStateChangeException {
display.setCurrent(tcanvas);
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
}
//翻页实现类
public class TextCanvas extends Canvas {
InputStream is;
InputStreamReader ir;
int b=0,page=1,num=-1;
private int count=0;
private String str=new String();
private String ss=new String();
private static final int MAX_SIZE=10;
public TextCanvas(Test test) {
str=this.getText();
System.out.println("--text.size--"+str.length());
}
protected void paint(Graphics g) {
// TODO Auto-generated method stub
int x = 0;
int y = 0;
//设置画布颜色
// g.setColor(0xD8d8BF);
// g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(255, 255, 255);
g.fillRect(0, 0, getWidth(), this.getHeight());
ss=this.TurnPage(count);
g.setColor(0x000000);//设置内容颜色
g.drawString(ss, x, y,Graphics.LEFT|Graphics.TOP);
}
protected void keyPressed(int keyCode){
//4向前翻页,6向后翻页;
if(keyCode==Canvas.KEY_NUM6){
System.out.println("-------6向后翻页--------");
this.changePage(page);
page++;
this.repaint();
}
else if(keyCode==Canvas.KEY_NUM4){
System.out.println("---------4向前翻页----------");
this.changePage(page-1);
page--;
this.repaint();
}
}
//翻页功能pageNum==1时向下翻一页,pageNum==-1时向上翻一页
public int changePage(int pageNum){
System.out.println("--前count--/"+count+"----pageNume----/"+pageNum);
if(page>=1){
count=MAX_SIZE*pageNum;
} else if(page <1){
count=0;
}
System.out.println("--后count--/"+count);
return count;
}
//截取当前页字符串
protected String TurnPage(int start){
String temp="";
int end=start+MAX_SIZE;
int ks=start;
System.out.println(ks+"/"+end);
if(end<=str.length()){
temp=str.substring(ks,end);
}else if(ks<str.length()){
temp=str.substring(ks);
}else{
temp="文本已读完!!";
}
System.out.println("------str---"+temp+"-currentPage--/"+page);
return temp;
}
// 获取文件中的字符将其放入字符串对象中
protected String getText(){
is = getClass().getResourceAsStream("/a.txt");
ir=new InputStreamReader(is);
if (null != is) {
int ch = 0;
try {
while ((ch = ir.read()) != -1) {
str=str.concat(String.valueOf((char)ch));
}
} catch (IOException e) {
e.printStackTrace();
}
// System.out.println("-------获取文件中的字符---"+str);
return str;
} else {
return null;
}
}
}
分享到:
相关推荐
在“很多标准的J2ME例子”这个资源中,你将找到一系列示例代码,这些代码是针对J2ME平台编写的。这些例子可能涵盖了J2ME的基础知识,包括UI设计、网络通信、数据存储、多媒体处理等核心主题。 1. **用户界面(UI)...
标题“自己写的J2ME小例子”表明这是一个个人开发的基于Java Micro Edition (J2ME) 的小型游戏项目。J2ME是Java平台的一个子集,主要用于移动设备和嵌入式系统,如早期的手机、PDA等。开发者使用J2ME创建应用程序,...
**标签“LWUIT j2me UI例子 制作漂亮的UI例子”** 强调了LWUIT在J2ME平台上的应用以及创建美观界面的重要性。这些标签可能关联着一个项目或教程,旨在帮助开发者学习和掌握LWUIT的UI设计技巧。 在**压缩包子文件的...
总之,"j2me射击例子学习"是一个很好的起点,它将帮助开发者掌握J2ME环境下的游戏开发技巧,为今后的移动游戏开发打下坚实的基础。通过不断地实践和学习,你将能够创建出更复杂、更具吸引力的移动游戏。
这个压缩包文件“丰富多彩的十六个J2ME的例子”显然包含了一系列的 J2ME 应用程序实例,旨在帮助开发者深入理解和实践 J2ME 的核心概念和技术。 1. **J2ME 架构**:J2ME 包括配置(Configurations)和 profiles...
本资源包"j2me例子大全"包含了J2ME技术的多个方面,旨在为开发者提供丰富的实践示例,帮助他们更好地理解和掌握J2ME的使用。 1. **J2ME概述**:J2ME由配置(Configurations)和 profiles(Profile)组成,如基础...
一个 简单的j2me 小例子,用于初学者,希望有所帮助 我是烟台大学的学生,有事请联系我,谢谢合作
总结来说,"J2ME例子:俄罗斯方块"不仅是一个学习J2ME编程的实践项目,也是提升游戏开发技能的良好途径。通过这个过程,开发者可以掌握移动平台上的图形编程、事件处理、游戏逻辑设计等多方面的知识,同时还能了解到...
**J2ME简介** J2ME,全称Java 2 Platform, Micro Edition,是Java平台的一个子集,专为资源有限的嵌入式设备和移动设备设计。它提供了开发和部署在各种设备上的应用程序的能力,如手机、智能电视、电子设备等。J2ME...
本资源包含了大量的J2ME源代码和实例,这些例子旨在帮助开发者从基础到进阶全面理解J2ME编程。下面将详细阐述J2ME的关键概念、重要技术以及这些源代码可能涵盖的领域。 1. **J2ME架构**:J2ME的架构主要由配置...
这个“游戏贪吃蛇j2me例子”提供了在J2ME环境中实现贪吃蛇游戏的源代码,让我们深入了解一下如何利用J2ME来构建这样的游戏。 1. **J2ME基础知识** J2ME由配置(Configurations)和 profiles(Profile)组成,其中...
在这个“J2ME手机游戏例子”中,我们将深入探讨J2ME游戏开发的基础知识、关键技术和实用技巧。 1. **J2ME架构** J2ME由配置(Configurations)和 profilings 组成。配置定义了设备的基本硬件能力,如Connected ...
这个小例子可能是为了帮助初学者理解如何在J2ME应用中实现用户身份验证或者数据交换。 【描述】提到的博文链接(已不可用)可能包含了详细步骤、代码示例和解释,以帮助开发者了解如何在J2ME环境中创建一个简单的...
这个压缩包“11个J2ME例子.rar”包含了一系列J2ME的应用程序示例,这些示例对于学习和理解J2ME编程至关重要。 J2ME架构由两部分组成:KVM(K Virtual Machine)和CLDC(Connected Limited Device Configuration)。...
**J2ME手机聊天室例子详解** Java 2 Micro Edition(J2ME)是一种轻量级的Java平台,主要用于移动设备、嵌入式系统和其他资源有限的设备上。在这个例子中,我们将深入探讨如何利用J2ME技术创建一个手机聊天室应用。...
eclipseme.feature_1.7.9_site.zip 导入的网址 博文链接:https://chenchuxin.iteye.com/blog/189134
下面我们将深入探讨J2ME中的GPS学习例子及其相关知识点。 首先,了解J2ME中的位置API是至关重要的。在J2ME中,我们通常使用Mobile Information Device Profile (MIDP) 和 Connected Limited Device Configuration ...
在“学习J2ME的一些例子”这个主题中,我们看到一系列项目文件,这些可能对应着郭克华j2me视频教程中的实践练习。以下是对这些项目的简要解析: 1. Proj19_1:可能是一个进阶项目,可能涉及到网络通信或多媒体处理...