Java Examples In A Nutshell (3rd Edition) [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Java Examples In A Nutshell (3rd Edition) [Electronic resources] - نسخه متنی

O'Reilly Media, Inc

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید








15.4 Custom Events


Beans can use the standard event
types defined in the java.awt.event and
javax.swing.event packages, but they
don't have to. Our YesNoPanel
class defines its own event type, AnswerEvent.
Defining a new event class is really quite simple;
AnswerEvent is shown in Example 15-4.

Example 15-4. AnswerEvent.java

package je3.beans;
/**
* The YesNoPanel class fires an event of this
type when the user clicks one
* of its buttons. The id field specifies which button the user pressed.
**/
public class AnswerEvent extends java.util.EventObject {
public static final int YES = 0, NO = 1, CANCEL = 2;
// Button constants
protected int id; // Which button was pressed?
public AnswerEvent(Object source, int id) {
super(source);
this.id = id;
}
public int getID( ) { return id; } // Return the button
}

Along with the
AnswerEvent class, YesNoPanel
also defines a new type of event listener interface,
AnswerListener, that defines the methods that must
be implemented by any object that wants to receive notification from
a YesNoPanel. The definition of
AnswerListener is shown in Example 15-5.

Example 15-5. AnswerListener.java

package je3.beans;
/**
* Classes that want to be notified when the user clicks a button in a
* YesNoPanel should implement this interface.
The method invoked depends
* on which button the user clicked.
**/
public interface AnswerListener extends java.util.EventListener {
public void yes(AnswerEvent e);
public void no(AnswerEvent e);
public void cancel(AnswerEvent e);
}


/ 285