J2me বা Java ME প্রোগ্রামিং শিখুন। এবং তৈরী করে ফেলুন Java ME Application আপনার হাতে থাকা জাভা ফোন টি দিয়ে (part: 20)


আসসালামুআলাইকুম

আসা করি আপনারা সকলেই আল্লাহর রহমতে ভালো আছেন। আমিও ভালো আছি। আর ভালো না থাকলে তো ভালো লাগার ওয়েবসাইট TrickBD আছেই। যেখানে আমরা নিত্য নতুন টিপস এবং Trick পেয়ে থাকি।

তো যাই হোক, এত কথা না বলে কাজের কথাই আসি। আজকের এই টিউটোরিয়াল এ আমি আপনাদের দেখাবো কিভাবে J2me Form এ বাটন যুক্ত করবেন। আমরা ইতিপূর্বে J2me তে কমান্ড যুক্ত করা শিখেছি। ওটা ছিলো।

CommandListener

আজকে যে বাটন তৈরি করা শিখবো। সেটা হোলো।

ItemCommandListener

ItemCommandListener এর মাধ্যমেই আমরা বাটন কমান্ড তৈরি করবো। একটা Source কোড উদাহারণ এর মাধ্যমে আমরা এটি শিখবো। তো নিচের স্টেপ গুলো অনুসরন করুণ।

আমরা আগে যখন কমান্ড তৈরি করেছিলাম তখন CommandListener implements করেছিলাম। আজকে যেহেতু ItemCommand যেটাকে বাটন হিসেবে উল্লেখ্য করা হয়েছে সেটা তৈরি করবো তাই আমরা প্রথমেই ItemCommandListener যুক্ত করবো। নিচে দেওয়া হোলো।


public class ButtonExample extends MIDlet implements ItemCommandListener {


}

এখন, আমরা গ্লোবাল ভেরিয়েবল গুলো ডিক্লেয়ার করবো।


Display disp;
Form f;
StringItem si, si1;
Command cm, exit;

এখন আমরা ভেরিয়েবল গুলো কনস্ট্রুক্টর এ ইনিটিয়ালাইজ করবো। প্রথমে Display এবং Form তৈরি করি।


disp = Display.getDisplay(this);
f = new Form("Form with Button");

এখন আমরা দুটো StringItem তৈরি করবো। যেগুলো বাটন হিসেবে use হবে।


si = new StringItem(null,"Click me");
si1 = new StringItem(null,"Exit");

এখন, আমরা ২ টা কমান্ড তৈরি করবো।


cm = new Command("Ok", Command.OK,0);
exit = new Command("Exit", Command.EXIT,1);

এখন এই কমান্ড গুলো StringItem এ বাটন হিসেবে যুক্ত করবো। প্রথমত StringItem si এ এবং কমান্ড cm যুক্ত করবো।


si.setDefaultCommand(cm);

এরপর, StringItem si1 এ কমান্ড exit যুক্ত করবো।


si1.setDefaultCommand(exit);

এখন দুটো StringItem ক্লাস এ ItemCommandListener এ MIDlet দিবো।


si.setItemCommandListener(this);
si1.setItemCommandListener(this);

এখন আমরা দুটো StringItem কে Form এ যুক্ত করবো।


f.append(si);
f.append(si1);

এখন আমরা startApp() এ Display তে Form show করাবো।


disp.setCurrent(f);

এরপর আমরা commandAction এ যাবো এবং দুটো Item কমান্ড কে হ্যান্ডেল করবো। প্রথমে কোড ব্লক তৈরি করে নেই


public void commandAction(Command c, Item i) {

 }

এখন কমান্ড হ্যান্ডেল করবো।


if (c = exit) {
 notifyDestroyed();
}

অ্যাপ Exit করতে এটি ব্যবহার করা হয়েছে।


if (c == cm) {
Alert a = new Alert("Button","Button Command Excuted", null, AlertType.INFO);
a.setTimeout(Alert.FOREVER);
disp.setCurrent(a, f);
}

Click me বাটন এ ক্লিক করলে উক্ত Alert টি Display তে দেখাবে।

এই পর্যন্তই, নিচ থেকে পুরো Source কোড টি Download করে নেন

Download J2me ButtonExample Source Code

View Full Source Code


/*
* ItemCommandListener
* Form with Button
*/

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class ButtonExample extends MIDlet implements ItemCommandListener {
 Display disp;
 Form f;
 StringItem si, si1;
 Command cm, exit;

 public ButtonExample() {
 disp = Display.getDisplay(this);
 f = new Form("Form With Button");
 si = new StringItem(null,"Click Me");
 si1 = new StringItem(null,"Exit");
 cm = new Command("OK", Command.OK,0);
 exit = new Command("Exit", Command.EXIT,1);
 si.setDefaultCommand(cm);
 si1.setDefaultCommand(exit);
 si.setItemCommandListener(this);
 si1.setItemCommandListener(this);
 f.append(si);
 f.append(si1);
 }

 public void startApp() {
 disp.setCurrent(f);
 }

 public void pauseApp() {
 }

 public void destroyApp(boolean unconditional) {
 }

 public void commandAction(Command c, Item i) {
 if (c == exit) 
 notifyDestroyed();
 if (i == si) {
 Alert a = new Alert("Button","Button Command Excuted", null, AlertType.INFO);
 a.setTimeout(Alert.FOREVER);
 disp.setCurrent(a,f);
 }

 }
}

Thanks For Read This Post



Leave a Reply

Your email address will not be published. Required fields are marked *