PHPFan
PHPFan

Reputation: 796

LWUIT TextArea text formatting how to?

I work on a LWUIT project that aims to computerize an Arabic book . That means each page of the

mentioned book accessed by a specific button

returns

To do that I created a form , array of buttons, and a textarea.

The setText( ) method of textarea widget is used to involve each page of the book How?

When a button pressed

the setText( ) changes it's string according to the content of the

required page

returns

At the end of the project a problem of formatting faces me .

The book page's contents (Strings ) are unformatted.

returns

to solve the problem I tried a LWUIT HtmlComponent instead of textArea in order to format using

html tags , but it takes much of memory

(at least it cost more than 700 kb for an application).

So I wouldn't be able include all the pages of the book by this way.

returns

This my first trial

import javax.microedition.midlet.*;

 import com.sun.lwuit.events.*;

import javax.microedition.midlet.*;

import com.sun.lwuit.layouts.*;


import com.sun.lwuit.*;


public class Arabic_Lang extends MIDlet {

    public void startApp()
    {
 com.sun.lwuit.Display.init(this);

  final  com.sun.lwuit.Form main_form = new com.sun.lwuit.Form();

   final  com.sun.lwuit.Form  f = new com.sun.lwuit.Form();


   final com.sun.lwuit.TextArea txt1 = new com.sun.lwuit.TextArea();

   f.addComponent(txt1);

  final   com.sun.lwuit.Button l[]= new  com.sun.lwuit.Button [3];

  final com.sun.lwuit.Button inter = new com.sun.lwuit.Button("inter");


   final  com.sun.lwuit.Form jjj8 = new com.sun.lwuit.Form();

   jjj8.setTitle( "اللغة العربية");

  jjj8.getStyle().setBgColor(0x006699);

  jjj8.setScrollableX(true);

   int i;


   for(i=0;i<3;i++)

  {

    l[i] =new com.sun.lwuit.Button();


  l[i].getStyle().setBgColor(0xFFF66);

 main_form.addComponent(l[i]);

 main_form.setScrollable (true);

 main_form.setScrollableX(false);

        }
       l[0].setText("");

l[0].getStyle().setBgColor(0xffff00);


l[0].setText("arabic");

l[1].setText("arabic");

  l[0].addActionListener(new  ActionListener(){

 public void actionPerformed(ActionEvent ae) {

  txt1.setText(" \u0628 \u0639\u0644\u0649 \u0644\u063A\u062A");

 }

});

  l[1].addActionListener(new  ActionListener(){

 public void actionPerformed(ActionEvent ae) {


txt1.setText(" \u0628 \u0639\u0644\u0649 \u0644\u063A\u062A");

f.show();

}
});


jjj8.addComponent(inter);

inter.addActionListener(new ActionListener()
{

  public void actionPerformed(ActionEvent ae) {

  main_form.show();

  }
}
 );

jjj8.show();

    }

    public void pauseApp() {
    }

    public void destroyApp(boolean unconditional) {
    }
}

returns

And this is my trial to use htmlComponent

returns

import com.sun.lwuit.layouts.*;


import javax.microedition.midlet.*;


public class HelloLWUITMidlet3 extends MIDlet

{

  public void startApp()
  {
   com.sun.lwuit.Display.init(this);

  final com.sun.lwuit.Form form = new com.sun.lwuit.Form("");

  final com.sun.lwuit.html.HTMLComponent htmlC = new com.sun.lwuit.html.HTMLComponent( );


   htmlC.setRTL(true);

   htmlC.setBodyText("هذه لغة عربية","UTF-8" );

    form.addComponent(htmlC);


    BorderLayout bl = new BorderLayout();

    form.setScrollable(true);


    form.show( );

   }

  public void pauseApp() 
  {

  }

 public void destroyApp(boolean unconditional) {


 }


 }

Upvotes: 0

Views: 186

Answers (1)

Shai Almog
Shai Almog

Reputation: 52760

Store the pages of the book as HTML files in your src dir (in the jar root) and load them directly into the HTMLComponent as is shown in the LWUITDemo.

Upvotes: 1

Related Questions