`
izuoyan
  • 浏览: 9222770 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

LWUIT + ChartComponent 之三实现柱体图(HBarChar)

阅读更多
本文来自http://blog.csdn.net/hellogv/

本文源代码下载地址:http://download.csdn.net/source/872671
本文就不再说多余的开场白了,想看开场白?看这里:http://blog.csdn.net/hellogv/archive/2008/12/15/3521119.aspx
直接贴出实现柱体图的代码:
  1. /*
  2. *LWUIT+ChartComponent,实现多种图表
  3. *作者:张国威(咪当俺系噜噜)
  4. *本例实现的是“横柱体”
  5. */
  6. packagecom.sun.lwuit.uidemo;
  7. importcom.sun.lwuit.Button;
  8. importcom.sun.lwuit.Command;
  9. importcom.sun.lwuit.Font;
  10. importcom.sun.lwuit.Form;
  11. importcom.sun.lwuit.Image;
  12. importcom.sun.lwuit.Label;
  13. importcom.sun.lwuit.events.ActionEvent;
  14. importcom.sun.lwuit.events.ActionListener;
  15. importcom.sun.lwuit.layouts.FlowLayout;
  16. importorg.beanizer.j2me.charts.ChartItem;
  17. importorg.beanizer.j2me.charts.HBarChart;
  18. publicclassHBarChartDemoimplementsActionListener{
  19. publicFormform=newForm("HBarChartDemo");
  20. privateCommandbackCommand=newCommand("Back",1);
  21. finalHBarCharthbarChart=newHBarChart("");//定义HBarChart
  22. HBarChartDemo()
  23. {
  24. //柱体说明
  25. Stringchart_str[]={"█A:你好吗","█B:早上好","█C:中午好","█D:晚上好","█E:吃宵夜","█F:睡懒觉"};
  26. //柱体颜色
  27. int[][]color={{0,0,200},{0,200,0},{200,0,0},{200,0,200},{0,200,200},{200,100,200}};
  28. //柱体长度
  29. int[]percent={15,10,5,20,34,16};
  30. //绘制柱体的说明
  31. initChartInfo(chart_str,color);
  32. intwidth=form.getWidth();
  33. intheight=form.getHeight()-140;
  34. Imageimg_hbarChart=drawHBarChart(hbarChart,width,height,"",color,percent);//绘制柱体图
  35. Buttonbutton=newButton(img_hbarChart);
  36. //button.getStyle().setBgTransparency(1);//透明背景,会非常消耗资源,速度减慢,注意使用
  37. button.setBorderPainted(false);
  38. form.addComponent(button);
  39. form.addCommand(backCommand);
  40. form.setCommandListener(this);
  41. form.setLayout(newFlowLayout());//必须使用这种排列,FlowLayout最适合
  42. }
  43. privatevoidinitChartInfo(String[]chart_str,int[][]color)
  44. {
  45. for(inti=0;i<chart_str.length;i++)//循环
  46. {
  47. Labelchart_info=newLabel(chart_str[i]);
  48. chart_info.getStyle().setFgColor(UIDemoMIDlet.RGBtoInt(color[i][0],color[i][1],color[i][2]));
  49. form.addComponent(chart_info);
  50. }
  51. }
  52. privateImagedrawHBarChart(ChartItemitem,
  53. intwidth,
  54. intheight,
  55. Stringimagefile,
  56. int[][]color,//柱体颜色
  57. int[]percent)//柱体长度(百分比)
  58. {
  59. item.setFont(Font.FACE_PROPORTIONAL,Font.STYLE_PLAIN,Font.SIZE_SMALL);
  60. item.setDrawAxis(true);
  61. item.setPreferredSize(width,height);//设置chart控件的大小
  62. if(imagefile.length()>0)//需要使用背景时
  63. {
  64. try{
  65. javax.microedition.lcdui.Imageimg=javax.microedition.lcdui.Image.createImage(imagefile);//读取背景图
  66. item.setBackgroundImage(img);//设置背景图
  67. }catch(Exceptionex){ex.printStackTrace();}
  68. }
  69. item.showShadow(true);//使用阴影特效
  70. item.setShadowColor(20,20,20);//设置阴影颜色
  71. item.setColor(40,40,200);
  72. item.resetData();
  73. for(inti=0;i<color.length;i++)//循环绘画柱体
  74. {
  75. item.addElement(String.valueOf((char)('a'+i)),percent[i],color[i][0],color[i][1],color[i][2]);
  76. }
  77. item.setMaxValue(100);//柱体代表数值的显示范围,100%
  78. //这个是lcdui的Image
  79. javax.microedition.lcdui.Imagelcdui_img=
  80. javax.microedition.lcdui.Image.createImage(width,height);//柱体大小,图像>控件
  81. //这个是lcdui的Graphics
  82. javax.microedition.lcdui.Graphicslcdui_g=lcdui_img.getGraphics();
  83. hbarChart.drawChart(lcdui_g,width-40,height-20);//这里设置的大小必须比width,height小,才能完全显示
  84. returnUIDemoMIDlet.lcdui2lwuit(lcdui_img);
  85. }
  86. publicvoidactionPerformed(ActionEventarg0){
  87. if(arg0.getCommand()==backCommand)
  88. {
  89. UIDemoMIDlet.backToMainMenu();
  90. }
  91. }
  92. }

分享到:
评论

相关推荐

    LWUIT_ChartComponent

    在LWUIT中,ChartComponent是用于绘制图表的组件,可以显示各种类型的图表,如饼图、柱状图和折线图,这在数据可视化和信息展示方面非常有用。** **1. **J2ME简介**:** Java 2 Micro Edition (J2ME) 是Java平台的...

    Lwuit实现九宫图特效程序

    《Lwuit实现九宫图特效程序详解》 在移动应用开发领域,LWUIT( Lightweight UI Toolkit)是一个强大的UI框架,它为Java ME(Micro Edition)提供了丰富的用户界面组件和动画效果。本文将深入探讨如何利用LWUIT来...

    j2me lwuit 1.4 源码+示例

    通过运行此示例,开发者可以直观地了解LWUIT如何实现各种UI元素和交互效果,从而学习和掌握LWUIT的使用方法。 "sun java(TM) wireless Toolkit 2.5.2_01 for CLDC"是开发J2ME应用的官方工具,包含了编译器、模拟器...

    J2ME LWUIT 之九宫图

    标题“J2ME LWUIT 之九宫图”指的是使用LWUIT库在J2ME平台上实现一个类似于iPhone上的九宫格布局的界面。九宫图通常是一种常见的布局方式,用于展示多个相互关联的小模块或应用图标,用户可以通过点击这些图标来启动...

    最新LWUIT_1_5

    3. **动画和过渡效果**:LWUIT支持动画和过渡效果,可以轻松实现组件的滑动、淡入淡出等动态效果,从而增强用户界面的吸引力。 4. **资源管理**:LWUIT包含一个资源管理器,用于处理图像、音频、视频等媒体资源,...

    Lwuit入门程序测试一下Demo

    2. **地图集成**:LWUIT可能通过第三方库或者自定义绘图实现地图展示,展示设备当前的位置标记。 3. **实时更新**:可能实现了定时或基于位置变化的更新机制,以跟踪设备的移动。 4. **用户交互**:可能有交互元素让...

    lwuit_demo_src.rar_DEMO_J2ME lwuit de_LWUIT_lwuit demo

    这个"lwuit_demo_src.rar_DEMO_J2ME lwuit de_LWUIT_lwuit demo"压缩包包含的是LWUIT库的示例源代码,对于学习和理解LWUIT的使用方法非常有帮助。 LWUIT的主要目标是提供一套轻量级的UI组件,使得开发者能够在资源...

    LWUIT.jar LWUIT.jar

    LWUIT.jarLWUIT.jarLWUIT.jarLWUIT.jarLWUIT.jarLWUIT.jar

    lwuit.rar_J2ME lwuit_LWUIT_j2me_j2me LWU_九宫

    标题中的"lwuit.rar_J2ME lwuit_LWUIT_j2me_j2me LWU_九宫"表明这是一个与LWUIT相关的压缩包,内容可能包含了实现J2ME平台上九宫图功能的代码或资源。 九宫图是一种常见的界面布局方式,通常用于显示多个小视图,如...

    lwuit实例 lwuit j2me 界面

    文件名称“LWUIT_9宫图”可能是一个LWUIT的实例,展示了如何使用该库创建一个9宫格布局的界面。在LWUIT中,可以使用布局管理器来安排组件的位置,9宫格布局是一种常见的界面设计,常用于展示图片、按钮或其他交互...

    J2ME+UI框架LWUIT开发手册

    5. **编写业务逻辑**:结合LWUIT的事件处理机制,实现用户交互逻辑和应用功能。 6. **测试与调试**:在模拟器或实际设备上运行并测试应用,调试可能出现的问题。 7. **打包发布**:最后,将应用打包成JAR或KJava...

    LWUIT1.3code.rar_LWUIT

    **LWUIT 1.3 源代码详解** LWUIT( Lightweight UI Toolkit)是Sun Microsystems(现已被Oracle收购)为J2ME(Java 2 Micro Edition)平台设计的一款轻量级用户界面库,旨在提供一套高效、美观且功能丰富的图形用户...

    Hello LWUIT——LWUIT开发指南2

    关于《Hello LWUIT——LWUIT开发指南2》,我们可以推测它可能包含更深入的LWUIT使用技巧,例如如何创建自定义组件、优化性能、集成第三方库,或者讲解如何利用LWUIT的动画系统创建动态效果。通过学习这篇指南,...

    LWUIT 开发指南第三章里的 Hello List 源代码

    本源码是博客《解读 LWUIT 之七:深入理解 LWUIT 框架的 MVC》中作者写的 Hello List 源代码。博客链接地址:http://blog.csdn.net/defonds/archive/2010/03/01/5334736.aspx。

    LWUIT,j2me教程

    6. **动画效果**:为了提升用户体验,LWUIT还支持各种动画效果的实现,包括过渡动画、对象动画等,使应用更具吸引力。 #### Java ME平台概述 Java ME(Java Platform Micro Edition)是Java技术的一个版本,旨在为...

    LWUIT j2me UI例子

    **LWUIT (Lightweight User Interface Toolkit)** 是Java ME(J2ME)平台上的一款轻量级用户界面库,主要用于创建富客户端应用,尤其适合在移动设备上构建吸引人的、功能丰富的用户界面。LWUIT 提供了丰富的组件、...

    lwuit 开发文档

    LWUIT(Lightweight UI Toolkit)是为移动设备提供的一个轻量级用户界面工具包,广泛应用于Java ME(Java Platform, Micro Edition)开发中。LWUIT开发文档是指导开发者如何利用LWUIT进行应用程序开发的官方指南或...

    lwuit1.4介绍

    LWUIT 1.4 是一个轻量级用户界面工具包(Lightweight User Interface Toolkit),专为Java ME(J2ME)平台设计,用于构建功能丰富的移动应用程序。这个版本的LWUIT引入了一个名为HTMLComponent的新组件,极大地扩展...

    LWUIT_3_1英文原版.part1

    The Lightweight UI Toolkit (LWUIT) 是一个轻量级JavaME UI工具包。LWUIT类似Swing 的MVC架构, 支持多种布局(Layouts), 皮肤更换, 字体, 触摸屏, 动画效果, Rich控件, 3D集成, Painter, 模式对画框, I18N/L10N等...

Global site tag (gtag.js) - Google Analytics