📄 newslist.java
字号:
/*
* @(#)NewsList.java 1.11 01/08/23
* Copyright (c) 2004-2005 wuhua of workroom Inc. All Rights Reserved.
* @version 1.0, 10/05/2004
* @author 饶荣庆
* @author 余煜辉
*/
package com.j2me.football.england;
import com.j2me.language.*;
import com.j2me.common.*;
import com.j2me.language.*;
import java.io.*;
import javax.microedition.lcdui.*;
/*
*此类是用来读取数据库球队中英国超级联赛最新的新闻信息,以供用户出差或旅游时候浏览
*/
public class NewsList extends List implements CommandListener
{
/*显示类*/
private Display display = null;
/*用于切换的界面类*/
public England england = null;
/*新闻内容*/
public NewsInfoForm news;
//连网络错误
private Alert errorAlert = null;
/*用一个滚动条来显示一些信息*/
public Ticker newsTicker = new Ticker("欢迎来到英超新闻中心!");
private Command backCommand = null;
private Command mostlyCommand = null;
private Command okCommand = null;
public NewsList(String title, Display display, England england)
{
super(title, List.IMPLICIT);
this.setTicker(newsTicker);
//获得用户切换界面
this.display = display;
this.england = england;
this.initList();
errorAlert = new Alert("ERROR", "连接网络失败 ", null, AlertType.ERROR);
errorAlert.setTimeout(1000);
this.okCommand = new Command("详细信息", Command.OK, 2);
this.mostlyCommand = new Command("主要内容", Command.OK, 2);
this.backCommand = new Command("返回", Command.BACK, 2);
this.addCommand(backCommand);
this.addCommand(mostlyCommand);
this.addCommand(okCommand);
this.setCommandListener(this);
}
/*初始化一些球队信息*/
private void initList()
{
String html = "";
/* Thread t = new Thread()
{
public void run()
{ */
try
{
//String parameter = "name=" + nameText.getString() + "&password=" + passwordText.getString();
//获得服务器用户保存的内容
html = ConnectHttp.invokeJSP(WebServerURL.getURL() + "football/england_news.jsp");
//处理HTML标记语言
html = DisposeHTML.getBody(html);
html = Unicode.unicodeToString(html);
}
catch(IOException e)
{
this.display.setCurrent(errorAlert);
System.out.println(e);
}
/* }
};
t.start();*/ //启动线程让它进行连网
String bufferstr = html.trim();
bufferstr = Unicode.unicodeToString(bufferstr); //处理中文问题
int j = 0;
while(true) //处理从网络上获得的数据并对其进行处理
{
j = bufferstr.indexOf("~");
if (j == -1)
{
break;
}
this.append(bufferstr.substring(0, j), null);
bufferstr = bufferstr.substring(j + 1, bufferstr.length());
}
}
public String getHtml(String parameter)
{
String html = "";
try
{
//String parameter = "name=" + nameText.getString() + "&password=" + passwordText.getString();
//获得服务器用户保存的内容
html = ConnectHttp.invokeJSP(WebServerURL.getURL() + "football/england_news_info.jsp", "name=" + parameter);
//处理HTML标记语言
html = DisposeHTML.getBody(html);
html = Unicode.unicodeToString(html);
}
catch(IOException e)
{
this.display.setCurrent(errorAlert);
System.out.println(e);
}
return html;
}
public void commandAction(Command c, Displayable s)
{
if(c == backCommand)
{
this.display.setCurrent(england);
}
if (c == okCommand)
{
DowloandGuage d = new DowloandGuage(); //连网的进度条
//创建新闻中心详细列表的对象
if (Language.isEnglish)
{
news = new NewsInfoForm("Content", this.getHtml(this.getString(this.getSelectedIndex())), display, this);
}
else
{
news = new NewsInfoForm("内容", this.getHtml(this.getString(this.getSelectedIndex())), display, this);
}
System.out.println(this.getString(this.getSelectedIndex()));
//当进度条好了以后,进入下个界面
d.showForm(display, news);
}
if (c == mostlyCommand)
{
newsTicker.setString(this.getHtml(this.getString(this.getSelectedIndex())));
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -