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

تعديل برنامج جافا

مغلق
بدأه sweety123 في 8 أبريل 2005 · 2 رد · 507 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

انا اكتب برنامج جافا مضمونه مجموعة من المأكولات وحساب السعر باستخدام:

Checkbox

TextFeild

Button

البرنامج مرفق ولكن اريد عند الضغط على الbuttonان يحسب لي المجموع

ولا اعلم طريقة للربط بين الميثودز

itemStateChanged

و

actionPerformed

ارجو المساعدة

علما بان الكلاس MyWindow يحوي تعريف الفريم

import java.awt.*;
import java.awt.event.*;
 class Class2 extends MyWindow implements  ActionListener, ItemListener 
{    int sum=0;
  TextField t1;
   Checkbox []c=new Checkbox [4];
	Button b1;
  Class2(){
    String []s={"DRINK","MEAT","RISE","FISH"};
   setLayout(new GridLayout(5,2));
   for(int i=0;i<s.length;i++){
 	 c=new Checkbox (s);
 	 add(c);
 	 c.addItemListener (this);}
 	 
      t1=new TextField(5);
      add(t1);
 	 Button b1=new Button("CASH");
 	 add(b1);
 	 //b1.addActionListener(this);

    setVisible(true);
  }
  public void itemStateChanged(ItemEvent e){
   int []x={10,20,30,25};
      
  for(int i=0;i<x.length;i++){ 
   if((e.getSource()==c)&&(e.getStateChange()==e.SELECTED))
    sum=sum+x;
        
   else if((e.getSource()==c)&&(e.getStateChange()==e.DESELECTED))
 	 sum=sum-x;}

  t1.setText(String.valueOf (sum));
  
  }
	public void actionPerformed(ActionEvent m)
	{
  
         
	}

 }
#2
import java.awt.*;
import java.awt.event.*;
class Class2 extends MyWindow implements  ActionListener, ItemListener 
{    int sum=0;
 TextField t1;
  Checkbox []c=new Checkbox [4];
Button b1;
 Class2(){
   String []s={"DRINK","MEAT","RISE","FISH"};
  setLayout(new GridLayout(5,2));
  for(int i=0;i<s.length;i++){
  c=new Checkbox (s);
  add(c);
  c.addItemListener (this);}
  
     t1=new TextField(5);
     add(t1);
  Button b1=new Button("CASH");
  add(b1);
  b1.addActionListener(this);

   setVisible(true);
 }
 public void itemStateChanged(ItemEvent e){
  int []x={10,20,30,25};
     
 for(int i=0;i<x.length;i++){ 
  if((e.getSource()==c)&&(e.getStateChange()==e.SELECTED))
   sum=sum+x;
       
  else if((e.getSource()==c)&&(e.getStateChange()==e.DESELECTED))
  sum=sum-x;}



 }
public void actionPerformed(ActionEvent m)

{
if(m.getSource()==b1)
t1.setText(String.valueOf (sum));        
}

}

بما أن الـsum معرفه على مستوى الكلاس فبامكانك الحصول عليها من أي طريقه

حيث انك تختبر التشك بوكس وتحسب أسعار الماكولات عند كل حدث عليها

وتخزن الالسعار في الـsum

وعندما يتم الضغط على البتون يتم جلب الـsum واضافتها الى التكست

أتمنى أني وفقت في الوصول الى ماتريد

تحياتي

#3

شكرا جزيلا على المساعدة اخي........

ان شاء الله في ميزان حسناتك

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

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