Java进阶篇:RMS从入门到精通系列之一(二)

2014-11-23 19:51:32 · 作者: · 浏览: 26
blic void showAlertError(String message) { alert.setString(message); alert.setType(AlertType.ERROR); alert.setTimeout(3000); display.setCurrent(alert); } } import java.util.Timer; import java.util.TimerTask; import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Command; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.midlet. MIDletStateChangeException; import javax.microedition.rms.*; public class CounterCanvas extends Canvas implements CommandListener { private RMSModel model; private RMSAnalyzer RMSanalyzer; private int interTime; private int counter; private boolean go = true; public static Command backCommand = new Command("退出", Command.EXIT, 3); public static final int INC = 1; public final Timer timer = new Timer(); public CounterCanvas(int interTime, int base, RMSAnalyzer rmsa) throws RecordStoreException { this.interTime = interTime; this.counter = base; this.RMSanalyzer = rmsa; model = new RMSModel(base, RMSanalyzer); this.addCommand(backCommand); this.setCommandListener(this); TimerTask timerTask = new TimerTask() { public void run() { try { model.writeRecord(INC); counter++; } catch (RecordStoreFullException e) { go = false; model.deleteRMS(); timer.cancel(); } catch (RecordStoreException e) { model.deleteRMS(); RMSanalyzer.showAlertError(e.getMessage()); timer.cancel(); } repaint(); } }; timer.schedule(timerTask, 1000, interTime); } public void setCounter(int counter) { this.counter = counter; } public void setInterTime(int interTime) { this.interTime = interTime; } protected void paint(Graphics arg0) { int SCREEN_WIDTH = this.getWidth(); int SCREEN_HEIGHT = this.getHeight(); arg0.drawRect(SCREEN_WIDTH / 10, SCREEN_HEIGHT / 2, SCREEN_WIDTH * 4 / 5, 10); if(RMSanalyzer.getDisplay().isColor()) { arg0.setColor(128, 128, 255); } arg0.fillRect(SCREEN_WIDTH / 10, SCREEN_HEIGHT / 2, counter, 10); if (!go) arg0.drawString("最大值: " + counter+"K字节", 0, 0, Graphics.TOP | Graphics.LEFT); } public void commandAction (Command arg0, Displayable arg1) { if (arg0 == backCommand) { try { <script type="text/java script">
<script type="text/java script">BAIDU_CLB_fillSlot("771048");
点击复制链接 与好友分享! 回本站首页
<script> function copyToClipBoard(){ var clipBoardContent=document.title + '\r\n' + document.location; clipBoardContent+='\r\n'; window.clipboardData.setData("Text",clipBoardContent); alert("恭喜您!复制成功"); }
分享到: 更多
<script type="text/java script" id="bdshare_js" data="type=tools&uid=12732"> <script type="text/java script" id="bdshell_js"> <script type="text/java script"> var bds_config = {'snsKey':{'tsina':'2386826374','tqq':'5e544a8fdea646c5a5f3967871346eb8'}}; document.getElementById("bdshell_js").src = "http://bdimg.share.baidu.com/static/js/shell_v2.js cdnversion=" + Math.ceil(new Date()/3600000)
您对本文章有什么意见或着疑问吗?请到 论坛讨论您的关注和建议是我们