package GUIAnwendungen.EventsButton;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.AbstractButton;
import javax.swing.JCheckBox;
public class ItemListenerBeispiel {
	public static void main(String[] args) {

		JFrame frame = new JFrame("ItemListener demo"); // أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن
														// من الكلاس
		JCheckBox checkBox = new JCheckBox("Check Box"); // checkBox إسمه Check Box هنا أنشأنا
		JLabel label = new JLabel(); // label إسمه Label هنا أنشأنا

		checkBox.setBounds(40, 40, 100, 30); // frame في الـ checkBox هنا قمنا بتحديد حجم و موقع الـ

		label.setBounds(40, 70, 200, 30); // frame في الـ label هنا قمنا بتحديد حجم و موقع الـ
		label.setText("Check Box is not checked"); // checkBox سيتم تبديل هذا النص عند النقر هلى الـ .label هنا قمنا
													// بإعطاء نص للـ

		frame.add(checkBox); // frame في الـ checkBox هنا أضفنا الـ
		frame.add(label); // frame في الـ label هنا أضفنا الـ

		frame.setSize(300, 250); // هنا قمنا بتحديد حجم النافذة. عرضها 300 و طولها 250
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // هنا جعلنا زر الخروج من النافذة يغلق البرنامج
		frame.setLayout(null); // لذلك قمنا بتحديد مكان كل شيء قمنا بإضافته في النافذة Layout Manager أي لم
								// نستخدم أي null هنا وضعنا
		frame.setVisible(true); // هنا جعلنا النافذة مرئية

		checkBox.addItemListener(new ItemListener() { // أي كلما تغيرت حالته .checkBox هنا نضع الأوامر التي نريد تنفيذها
														// عند النقر على الـ
			@Override
			public void itemStateChanged(ItemEvent e) {
				if (checkBox.isSelected()) // سيتم طباعة النص التالي checkBox إذا كان يوجد علامة صح على الـ
					label.setText("Check Box is checked");
				else // سيتم طباعة النص التالي checkBox إذا كان لا يوجد علامة صح على الـ
					label.setText("Check Box is not checked");
			}
		});
		

	}

}
