首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2ME开发 >

J2ME中关于Lwuit的标签的综合应用

2012-11-08 
J2ME中关于Lwuit的标签的综合使用J2ME中关于Lwuit的标签的综合使用由于我使用的主题对中文支持不好,希望大

J2ME中关于Lwuit的标签的综合使用
J2ME中关于Lwuit的标签的综合使用

由于我使用的主题对中文支持不好,希望大家下载或编辑一些好的主题。


package com.mopietek;import java.io.IOException;import javax.microedition.midlet.MIDlet;import javax.microedition.midlet.MIDletStateChangeException;import com.sun.lwuit.Button;import com.sun.lwuit.ButtonGroup;import com.sun.lwuit.CheckBox;import com.sun.lwuit.ComboBox;import com.sun.lwuit.Command;import com.sun.lwuit.Component;import com.sun.lwuit.Container;import com.sun.lwuit.Display;import com.sun.lwuit.Form;import com.sun.lwuit.Graphics;import com.sun.lwuit.Image;import com.sun.lwuit.Label;import com.sun.lwuit.List;import com.sun.lwuit.Painter;import com.sun.lwuit.RadioButton;import com.sun.lwuit.TabbedPane;import com.sun.lwuit.TextArea;import com.sun.lwuit.TextField;import com.sun.lwuit.animations.CommonTransitions;import com.sun.lwuit.animations.Transition;import com.sun.lwuit.animations.Transition3D;import com.sun.lwuit.events.ActionEvent;import com.sun.lwuit.events.ActionListener;import com.sun.lwuit.geom.Dimension;import com.sun.lwuit.geom.Rectangle;import com.sun.lwuit.layouts.BorderLayout;import com.sun.lwuit.layouts.BoxLayout;import com.sun.lwuit.layouts.GridLayout;import com.sun.lwuit.plaf.Style;import com.sun.lwuit.plaf.UIManager;import com.sun.lwuit.table.Table;import com.sun.lwuit.util.Resources;public class ComponentMIDlet extends MIDlet implements ActionListener{public Form mainForm;public List mexampleList;public Command mBackCommand;protected void startApp() throws MIDletStateChangeException {if(mainForm == null){Display.init(this);try {Resources res = Resources.open("/javaTheme.res");UIManager.getInstance().setThemeProps(res.getTheme("javaTheme"));} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}Form f = new Form("测试组件");mainForm = f;f.setLayout(new BorderLayout());List exampleList = new List();mexampleList = exampleList;exampleList.addItem("Labels");exampleList.addItem("Buttons");exampleList.addItem("More Buttons");exampleList.addItem("List and ComboBox");exampleList.addItem("Text");exampleList.addItem("Layouts");exampleList.addItem("Events");exampleList.addItem("Style");exampleList.addItem("TabbedPane");exampleList.addItem("Painter");exampleList.addItem("Exit");exampleList.addActionListener(this);f.addComponent(BorderLayout.CENTER,exampleList);mBackCommand = new Command("返回");}mainForm.show();}protected void destroyApp(boolean unconditional)throws MIDletStateChangeException {// TODO Auto-generated method stub}protected void pauseApp() {// TODO Auto-generated method stub}public void actionPerformed(ActionEvent ae) {if(ae.getSource() == mexampleList){//选中的List列表String selection = (String)mexampleList.getSelectedItem();if(selection.equals("Labels")){showLabels();}else if(selection.equals("Buttons")){showButtons();}else if(selection.equals("More Buttons")){showMoreButtons();}else if(selection.equals("List and ComboBox")){showListAndComboBox();}else if(selection.equals("Text")){showText();}else if(selection.equals("Layouts")){showLayouts();}else if(selection.equals("Events")){showEvents();}else if(selection.equals("Style")){showStyle();}else if(selection.equals("TabbedPane")){showTabbedPane();}else if(selection.equals("Painter")){showPainter();}else if(selection.equals("Exit")){try {destroyApp(true);} catch (MIDletStateChangeException e) {// TODO Auto-generated catch blocke.printStackTrace();}        notifyDestroyed();}}if(ae.getCommand() == mBackCommand){mainForm.show();}}public void showLabels(){Form f = new Form("测试Label");f.setLayout(new BoxLayout(BoxLayout.Y_AXIS));Label label1 = new Label("label1");Image image = null;try { image = Image.createImage("/baldy.png");} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}Label label2 = new Label(image);Label label3 = new Label(image);label3.setText("label3");label3.setTextPosition(Component.BOTTOM);f.addComponent(label1);f.addComponent(label2);f.addComponent(label3);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showButtons(){Form f = new Form("测试Button");try { Button button1 = new Button("ClickMe"); button1.setTextPosition(Component.BOTTOM); Imageimage = Image.createImage("/baldy.png"); Button button2 = new Button(image); Button button3 = new Button("Pic",image); button3.setTextPosition(Component.BOTTOM); f.addComponent(button1); f.addComponent(button2); f.addComponent(button3);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showMoreButtons(){Form f = new Form("MoreButtons");ButtonGroup buttonGroup = new ButtonGroup();RadioButton rb1 = new RadioButton("Mike");RadioButton rb2 = new RadioButton("Coffer");RadioButton rb3 = new RadioButton("Tea");rb1.addActionListener(this);rb2.addActionListener(this);rb3.addActionListener(this);buttonGroup.add(rb1);buttonGroup.add(rb2);buttonGroup.add(rb3);f.addComponent(rb1);f.addComponent(rb2);f.addComponent(rb3);CheckBox checkBox1 = new CheckBox("checkBox1");CheckBox checkBox2 = new CheckBox("checkBox2");CheckBox checkBox3 = new CheckBox("checkBox3");CheckBox checkBox4 = new CheckBox("checkBox4");CheckBox checkBox5 = new CheckBox("checkBox5");CheckBox checkBox6 = new CheckBox("checkBox6");f.addComponent(checkBox1);f.addComponent(checkBox2);f.addComponent(checkBox3);f.addComponent(checkBox4);f.addComponent(checkBox5);f.addComponent(checkBox6);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showListAndComboBox(){Form f = new Form("List and ComboBox");List list = new List();list.addItem("red");list.addItem("green");list.addItem("yellow");list.addItem("blue");list.addItem("white");ComboBox comboBox = new ComboBox(list.getModel());f.addComponent(list);f.addComponent(comboBox);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showText(){Form f = new Form("测试 Text组件");TextField textField = new TextField("this is write content in textField");TextArea textArea = new TextArea("this is write content in TextArea!",5,20);textArea.setMaxSize(512);f.addComponent(textField);f.addComponent(textArea);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showLayouts(){Form f = new Form("Text Layouts");f.setLayout(new BorderLayout());try{Image image = Image.createImage("/baldy.png");Label label = new Label(image);label.setAlignment(Component.CENTER);            label.setText("Label in Layouts");            label.setTextPosition(Component.BOTTOM);            //          Container buttonContainer = new Container(new BoxLayout(BoxLayout.X_AXIS));            Container buttonContainer = new Container();            GridLayout exampleLayout = new GridLayout(3,2);            buttonContainer.setLayout(exampleLayout);            buttonContainer.addComponent(new Button("Add"));            buttonContainer.addComponent(new Button("Remove"));            buttonContainer.addComponent(new Button("Edit"));            buttonContainer.addComponent(new Button("Send"));            buttonContainer.addComponent(new Button("Receive"));            buttonContainer.addComponent(new Button("Exit"));                        f.addComponent(BorderLayout.NORTH,label);            f.addComponent(BorderLayout.CENTER,buttonContainer);                        f.addCommand(mBackCommand);            f.setCommandListener(this);            f.show();                        }catch(IOException e){e.printStackTrace();}}public void showEvents(){Form f = new Form("Test Events");f.setLayout(new BorderLayout());    final Button button = new Button("Click Me");button.addActionListener(new ActionListener(){             int i = 0;public void actionPerformed(ActionEvent av) {                     i++;                     button.setText("NO."+i+"Clicked");}});f.addComponent(BorderLayout.NORTH,button);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showStyle(){Form f = new Form("Style");f.setLayout(new BoxLayout(BoxLayout.Y_AXIS));Label label1 = new Label("No using Style");//设置标签为透明色Label label2 = new Label("Transparent");label2.getStyle().setBgTransparency(0);//改变标签背景色Label label3 = new Label("Change the BackGroud Color and Font Color");Style style = label3.getStyle();style.setBgColor(0xaa00ff);//字体颜色为白色style.setFgColor(0xffffff);//设置margin的大小Label label4 = new Label("Margin around is 10px");label4.getStyle().setMargin(10,10,10, 10);//设置padding的大小Label label5 = new Label("Padding around is 20px");label5.getStyle().setPadding(20,20,20,20);f.addComponent(label1);f.addComponent(label2);f.addComponent(label3);f.addComponent(label4);f.addComponent(label5);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showTabbedPane(){Form f = new Form("TabbedPane");f.setLayout(new BorderLayout());TabbedPane tabbedPane = new TabbedPane(TabbedPane.TOP);tabbedPane.addTab("tab1", new Label("this is label One"));tabbedPane.addTab("Tab2", new Label("this is label Two"));f.addComponent(BorderLayout.NORTH, tabbedPane);f.addCommand(mBackCommand);f.setCommandListener(this);f.show();}public void showPainter(){Form f = new Form("Painter");    try {      Label label = new Label("Baldy");      Image image = Image.createImage("/baldy.png");      Label pictureLabel = new Label(image);      Label bottomText = new Label(image);      bottomText.setText("Baldassare");      bottomText.setTextPosition(Component.BOTTOM);      f.addComponent(label);      f.addComponent(pictureLabel);      f.addComponent(bottomText);    } catch (IOException ioe) {      System.out.println(ioe);    }        final int bg = f.getStyle().getBgColor();    final int fg = f.getStyle().getFgColor();        f.getStyle().setBgPainter(new Painter() {        public void paint(Graphics g, Rectangle rect) {            int s = 12;                        Dimension size = rect.getSize();            int rx = rect.getX();            int ry = rect.getY();            int rw = size.getWidth();            int rh = size.getHeight();                        g.setColor(bg);            g.fillRect(rx, ry, rw, rh);            //画棱形            g.setColor(fg);            for (int y = 0; y < rh; y += 2 * s) {              for (int x = 0; x < rw; x += s) {                g.fillTriangle(rx + x, ry + y + s, rx + x + s / 2, ry + y,        rx + x + s, ry + y + s);                g.fillTriangle(rx + x, ry + y + s, rx + x + s / 2, ry + y + 2 *s, rx + x + s, ry + y + s);              }            }        }    });    f.addCommand(mBackCommand);    f.setCommandListener(this);        //增加3D特效                                                                //时间  //true为逆时针翻转(向右翻转) false为顺时针翻转(向左翻转)    Transition t = Transition3D.createCube(400, true);    if (t == null)   //当t为null时,通过 CommonTransitions创建特效 //第一参数为type , 第二参数 为翻转, 第三参数时间      t = CommonTransitions.createSlide(CommonTransitions.SLIDE_VERTICAL, true, 700);    f.setTransitionInAnimator(t);        t = Transition3D.createCube(400, false);    if (t == null)                    // type是"SLIDE_VERTICAL"为上下切换,SLIDE_HORIZONTAL为左右切换      t = CommonTransitions.createSlide(CommonTransitions.SLIDE_HORIZONTAL, false, 700);    f.setTransitionOutAnimator(t);    f.show();}}

热点排行