`
starbhhc
  • 浏览: 654705 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

J2ME颜色选择器

 
阅读更多
有时在项目中可能会碰到自定义软件皮肤颜色或字体颜色的功能,那么颜色选择器正好派上了用场了。

此类为直接继承自Form类,所以使用时可以直接new 一个ColorSelectorUI对像然后显示即可,

如果要保存设置的颜色值,可以直接在此类中加Command即可。

package com.flyeverzhang.test;   
  
import javax.microedition.lcdui.CustomItem;   
import javax.microedition.lcdui.Form;   
import javax.microedition.lcdui.Gauge;   
import javax.microedition.lcdui.Graphics;   
import javax.microedition.lcdui.Item;   
import javax.microedition.lcdui.ItemStateListener;   
  
  
/**  
* J2ME 颜色选择器  
* @author flyeverzhang  
* 2009-7-31  
*/  
public class ColorSelectorUI extends Form implements ItemStateListener{   
       
    private Gauge red = new Gauge("R",true,255,0);//红色分量   
    private Gauge green = new Gauge("G",true,255,0);//蓝色分量   
    private Gauge blue = new Gauge("B",true,255,255);//绿色分量   
    private ShowColor sc = null ;   
    public ColorSelectorUI( ) {   
        super("颜色选择器");   
           
        sc = new ShowColor("颜色预览");   
        this.append(this.red);   
        this.append(this.green);   
        this.append(this.blue);   
        this.append(sc);   
           
        //注册监听器   
        this.setItemStateListener(this);   
    }   
    /**  
    * 颜色预览窗口  
    * @author flyeverzhang  
    * 2009-7-31  
    */  
    class ShowColor extends CustomItem {   
           
        protected ShowColor(String label) {   
            super(label);   
        }   
  
        protected int getMinContentHeight() {   
            return 30;   
        }   
  
        protected int getMinContentWidth() {   
            return 150;   
        }   
  
        protected int getPrefContentHeight(int arg0) {   
            return this.getMinContentHeight();   
        }   
  
        protected int getPrefContentWidth(int arg0) {   
            return this.getMinContentWidth();   
        }   
  
        protected void paint(Graphics g, int w, int h) {   
            g.setColor(red.getValue(),green.getValue(),blue.getValue());   
            g.fillRect(0, 0, w - 1, h - 1);            
        }   
           
        public void reDraw(){   
            this.repaint();   
        }   
    }   
  
    public void itemStateChanged(Item item) {   
        sc.reDraw();   
    }   
       
       
}  
分享到:
评论

相关推荐

    mapwin最新汉化版(j2me地图编辑器)

    MapWin是一款专为Java 2 Micro Edition (J2ME) 平台设计的地图编辑器,它的最新汉化版使得中国用户能够更方便地使用这款工具,无需面对语言障碍。J2ME是Java的一个子集,主要用于移动设备和嵌入式系统,如手机、PDA...

    J2ME 本地视频播放器

    UI设计需要考虑到小屏幕显示、触摸操作和有限的颜色及字体选择。 ### 5. 网络视频播放 虽然主要强调本地视频播放,但标签中提到了“实现本地以及网络”。这意味着播放器可能还支持流媒体播放,这需要使用HTTP连接...

    j2me 游戏 连连看 源码,很牛

    开发者需要编写监听器来捕获这些事件,根据点击位置判断用户选择了哪个方块,并进行相应的操作,如检查相邻方块是否可以消除。 3. **游戏逻辑**: 连连看的游戏逻辑相对复杂,需要考虑方块的匹配规则、消除动画、...

    图片分类 J2ME中的图片处理

    在J2ME中处理图片时,需要考虑设备的内存和性能限制,选择合适的图片格式,有时可能需要进行预处理,如缩放、压缩或转换为更适应移动环境的格式。此外,J2ME的`javax.microedition.lcdui.Image`类提供了基本的图片...

    j2me五子棋游戏源码

    源码中会有相应的事件监听器,当玩家选择位置下棋时,代码会解析输入并更新棋盘状态。 4. **图形绘制**:在J2ME中,Canvas类用于自定义绘图,游戏界面的绘制将在此类上进行。开发者需要理解如何使用Graphics对象...

    潜艇大战游戏J2ME源码.rar

    4. **事件处理**:玩家的操作如按键按下,会被转化为事件,通过监听器(Listener)机制处理。J2ME中的KeyListener接口用于处理键盘输入,实现移动和发射炮弹等动作。 5. **时间管理**:游戏的实时性往往依赖于...

    j2me中文Api

    ### j2me中文API知识点详解 #### 一、概述 J2ME(Java 2 Platform Micro Edition)是Java平台的一个版本,专...未来,随着技术的发展,虽然J2ME可能不再是最新的选择,但其中的许多概念和技术依然具有很高的学习价值。

    J2ME模拟器 KEmulator Lite V0.9.8 中文版

    总之,J2ME模拟器KEmulator Lite V0.9.8中文版是J2ME开发和使用的理想选择,它的便捷性、功能性以及对中文的支持,使得用户可以轻松地在个人电脑上运行和测试J2ME应用程序,比如压缩包中包含的QQ2007.jar,让我们...

    J2ME手机游戏设计

    J2ME使用轻量级事件模型,通过监听器接口处理用户输入,如按键和触摸事件。游戏逻辑通常围绕这些事件展开,如玩家在连连看游戏中选择并匹配方块。 五、游戏逻辑 1. **连连看游戏**:玩家需找到并点击两个相同的...

    魔方游戏J2ME代码讲解

    1. 理解J2ME的配置和profile,选择合适的开发环境。 2. 实现3D魔方模型,包括颜色分配和旋转算法。 3. 使用键盘事件处理用户输入,响应旋转操作。 4. 创建自定义Canvas,设计吸引人的用户界面。 5. 添加计时和步数...

    黑白棋j2me手机游戏

    在这款游戏中,玩家可以选择扮演黑色或白色的棋子,目标是通过智慧的布局,使对方的棋子陷入包围,从而将其翻转成己方的颜色。每一步操作,棋子只能沿着棋盘的对角线移动到空位,或者移动到有对方颜色棋子的格子旁边...

    《J2ME手机游戏开发技术详解》.

    #### 第三章 J2ME应用开发环境的选择和配置 - **3.1 JBuilder2005开发环境搭建** - **3.1.1 搭建J2ME开发平台**:在JBuilder中设置J2ME环境。 - **3.1.2 开发Demo程序**:通过示例程序演示开发过程。 - **3.1.3 ...

    j2me ui lwuit 1.3

    5. **事件处理**:LWUIT 提供了简洁的事件处理机制,开发者可以通过添加监听器来响应用户的交互操作,如点击按钮、选择列表项等。 6. **国际化与本地化**:LWUIT 支持多语言环境,开发者可以轻松地为应用添加不同...

    基于J2ME的黑白棋游戏

    游戏交互方面,J2ME的键盘和触摸屏事件处理机制使得玩家能够通过设备的输入设备选择和移动棋子。开发者需要编写事件监听器,响应用户的点击操作,并更新游戏状态。 至于文件名"BlackChess",这可能是游戏的主程序类...

    旋转菜单示例程序(j2me)

    事件监听器会捕获用户的动作,根据这些动作更新菜单的状态,比如旋转角度或选中的菜单项。 在示例程序"CircleMenu"中,我们可以推测它可能是一个基于圆形布局的旋转菜单。菜单项可能围绕一个中心点分布,随着用户的...

    J2ME 3D手机游戏开发详解

    在开发环境的选择和配置章节中,作者详细列出了几种常用的J2ME开发工具,如WTK (Wireless Toolkit)、手机厂商SDK、JBuilder、Eclipse和NetBeans,每种工具的安装和配置步骤都有详尽的指导,方便开发者根据自己的需求...

    J2ME视频播放实现的简单代码

    总结来说,实现J2ME平台上的视频播放涉及到对J2ME架构的理解,选择合适的解码库,处理流媒体数据,以及构建用户友好的交互界面。这个过程需要深厚的编程技巧和对移动设备性能的深入理解。通过阅读提供的博客链接,...

    J2ME编写的猜单个数字游戏

    4. **事件监听**:为提交按钮绑定事件监听器,监听用户输入并处理猜数逻辑。 5. **反馈提示**:根据用户的猜测,使用`javax.microedition.lcdui.Alert`类创建提示消息,显示猜高、猜低或猜对的信息。 6. **循环...

Global site tag (gtag.js) - Google Analytics