الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التعليمات البرمجية في J2ME

مغلق
بدأه ramigraph في 20 ديسمبر 2004 · 7 رد · 1,035 مشاهدة · في JavaME
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم,

بعد جهد كبير في البحث و التجريب لم أتوصل الى الحل الصحيح.

الأخوان الكرام خبراء J2ME الرجاء التفضل علي و تجريب هذا البرنامج على الهاتف!!!!!

علماً بأنه يشغله ktoolbar و لا يجد فيه أي خطأ..!؟ و لكنه غير مقبول بالنسبه لمشغل الجافا في الهاتف!

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

public class LoginRami extends MIDlet implements CommandListener {
	Display display;
	TextField userName;
	TextField password;
	Form form;
	Command cancel;
	Command login;

	public LoginRami( ) {
  userName = new TextField("اسم المستخدم:", "", 10, TextField.ANY);
  password = new TextField("كلمة السر:", "", 10, TextField.PASSWORD);
  form = new Form("التسجيل");
  cancel = new Command("الغاء", Command.CANCEL, 2);
  login = new Command("تسجيل", Command.OK, 2);
	}

	public void startApp( ) {
  display = Display.getDisplay(this);
  form.append(userName);
  form.append(password);
  form.addCommand(cancel);
  form.addCommand(login);
  form.setCommandListener(this);
  display.setCurrent(form);
	}

	public void pauseApp( ) {}

	public void destroyApp(boolean unconditional) {
  notifyDestroyed( );
	}

	public void validateUser(String name, String password) {
  if (name.equals("a1") && password.equals("1a")) {
 	 form.deleteAll();	// غير مقبولة في الهاتف
 	 form.removeCommand(login);
 	 menu( );
  }
  else {
 	 tryAgain( );
  }
	}

	public void menu( ) {
  form.setTitle("Logo");	// غير مقبولة في الهاتف
  try{
  Image img = Image.createImage("/Rami.png");	// طبيعي لا تنسى تغير اسم الصورة
       	 form.append(img);  
         } catch (java.io.IOException e)
           	 {
                Alert alert = new Alert ( "خطأ في تحميل الصورة" );
                alert.setString( e.getMessage() );
                display.setCurrent(alert);
         }
	}

	public void tryAgain( ) {
  Alert error = new Alert("خطأ في التسجيل", "حاول مرة أخرى", null, AlertType.ERROR);
  error.setTimeout(Alert.FOREVER);
  userName.setString("");
  password.setString("");
  display.setCurrent(error, form);
	}

	public void commandAction(Command c, Displayable d) {
  String rami = c.getLabel( );
  if (rami.equals("الغاء")) {
 	 destroyApp(true);
  }
  else
 	 if (rami.equals("تسجيل")) {
    validateUser(userName.getString(), password.getString( ));
 	 }
	}
}

ما هي الطريقة الصحيحة التي يقبلها مشغل الجافا في الهاتف, لحذف كامل محتويات الفورم ( لإستبدالها بأخرى ). " علماُ الهاتف هو نوكيا 6610 "

و لكم الشكر سلفاً.

رامي

#2
deleteAll
public void deleteAll()Deletes all the items from this Form, leaving it with zero items. This method does nothing if the Form is already empty.
Since: 
MIDP 2.0

هذا الاسلوب موجود في MIDP 2.0 وليس MIDP 1.0 وجهازك لا يدعم MIDP 2.0

public void delete(int itemNum)

ويمكنك لمسح عناصر الفورم يعني

form.delete(itemNum);

form.setTitle("Logo"); // غير مقبولة في الهاتف

هذا مش موجود اصلا لان

 Form form = new Form("Here you must write the Form Title");

ما الفائدة من استخدامك لهذه الاساليب في هذه المثال ??

 form.deleteAll(); // غير مقبولة في الهاتف
  form.removeCommand(login);

تم تعديل هذه المشاركة بواسطة مجدي محمود في 20 ديسمبر 2004 في 20:37

لست متواجد بشكل يومي

#3

السلام عليكم أخي مجدي, شكراً لردك السريع.

اقتباس
هذا الاسلوب موجود في MIDP 2.0 وليس MIDP 1.0 وجهازك لا يدعم MIDP 2.0

كيف يمكن معرفة أن الجهاز يدعم MIDP 2.0 أو لا __016

public void delete() {
form.delete(1);
form.delete(2);
}

هل تقصد هكذا __016

Form form = new Form("Here you must write the Form Title");

اريد فقط تغيير اسم الفورم من أجل استعمال معه عناصر جديدة! ( بدون اللجوء إلى فورم جديد ).

form.deleteAll(); // هذا لمسح كل العناصر مرة واحدة من الفورم و لا يعمل إلا مع MIDP 2.0  كما قلت لي سابقاً.
form.removeCommand(login);  //  هذا من أجل حذف أمر لم أعد بحاجته!

مع الشكر لجهودك في مساعدتي 015

رامي __0110

#4
اقتباس
كيف يمكن معرفة أن الجهاز يدعم MIDP 2.0 أو لا  __016

على الرابط التالي

/index.php?showtopic=52981

اقتباس
ابحث بيكون مكتوب ابحث في النت في google مثلا اكتب في حقل البحث Nokia 6230 Java اوNokia 6230 MIDP او بيكون فيالجهاز مع توابعه في الدفتر UserGuide

طبعا لازم تكتب اسم الجهاز الموجود عندك

اقتباس
هل تقصد هكذا  __016

نعم

اقتباس
اريد فقط تغيير اسم الفورم من أجل استعمال معه عناصر جديدة! ( بدون اللجوء إلى فورم جديد ).
اقتباس

form.deleteAll(); // هذا لمسح كل العناصر مرة واحدة من الفورم و لا يعمل إلا مع MIDP 2.0  كما قلت لي سابقاً.

form.removeCommand(login);  //  هذا من أجل حذف أمر لم أعد بحاجته!

عندما يتم التسجيل والدخول تستطيع ان تقوم باضافة شئ جديد للفورم او عمل فورم جديد افضل واسهل ومن الطبيعي انك تضيف فورم جديد وكمان بعد التسجيل سيقوم بحذف الكوماند اذا لم تضيفه يعني لا تحتاج لذلك

لست متواجد بشكل يومي

#5

السلام عليكم أخي مجدي,

public void delete() {
form.delete(1);
form.delete(2);
}

لاحظ بأن المشيد يهمل السطر الأول و ينفذ السطر الأخير.

بالنسبة لموضوع الفورم أحتاج إلى أكثر من فورم في البرنامج و فكرت أنني إذا استخدمت نفس الفورم مع مسح المحتويات يساعد في تصغير حجم البرنامج! 008

مع الشكر الجزيل لجهودك.

رامي

تم تعديل هذه المشاركة بواسطة ramigraph في 22 ديسمبر 2004 في 11:50

#6

يا أخ ramigraph يمكن مافيه طريقة مباشرة للمسح ولكن

أنا استخدمت هذه الطريقة لمسح الفورم

form.delete(0);
form.delete(0);
form.delete(0);
form.delete(0);

هذا لمسح أربعة أسطر من الفورم على التوالي .

لأن عنوان السطر الأول هو (0) وليس(1)

ولأنه بمجرد مسح السطر الأول رقم (0) يتحول السطر الثاني رقم (1) إلى العنوان (0) والسطر الثالث (2) إلى(1) و.. هكذا .

بهذه الطريقة تستطيع أن تمسح جميع الأسطر بشرط أن لا يزيد عدد أسطر المسح عن عدد أسطر الفورم .

#7
اقتباس
خ ramigraph يمكن مافيه طريقة مباشرة للمسح

يوجد عن طريق deleteAll ولكن في MIDP2.0

form.delete(0);

هذا فعلا يقوم بمسح العنصر الاول لانه في J2ME يبدا العد من الصفر حتى اعتقد بالجافا

الحمد لله يوجد الان اكثر من واحد للمساعدة sih and ha98

:D

تم تعديل هذه المشاركة بواسطة مجدي محمود في 22 ديسمبر 2004 في 21:09

لست متواجد بشكل يومي

#8

السلام عليكم أخي sih و أخي مجدي,

شكراً لمساعاتكم لي :wub:

أخ sih بالنسبة لطريقة مسح الأسطر من الفورم بالفعل هي الطريقة المطلوبة. __024

أخ مجدي أتمنى أن أحيط بهذه اللغة سريعاً لكي أنضم إلى فريق المساعدة و ليس فقط طرح الأسئلة! __0110

مع الشكر الجزيل. 015

رامي

هذا الموضوع مغلق.

مواضيع مشابهة