1 / 23

Knowledge Byte In this section, you will learn about: Property Sheets and Property Editor

Knowledge Byte In this section, you will learn about: Property Sheets and Property Editor The PropertyEditorSupport and PropertyDescriptor Class The BeanInfo Interface. Property Sheets and Property Editor

mave
Download Presentation

Knowledge Byte In this section, you will learn about: Property Sheets and Property Editor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Knowledge Byte • In this section, you will learn about: • Property Sheets and Property Editor • The PropertyEditorSupport and PropertyDescriptor Class • The BeanInfo Interface Collaborate

  2. Property Sheets and Property Editor • Property sheets and property editors enable easy access to the exposed JavaBean properties. • Property sheet or the Properties window of BDK displays a list of all the exposed properties of a JavaBean. • A property editor window is used to edit the values of JavaBean properties, which cannot be edited in property sheets. • The property editor is always associated with a specific JavaBean property. • The property editor is displayed whenever an attempt is made to modify the value of the associated JavaBean property during the build phase. Collaborate

  3. The PropertyEditorSupport and PropertyDescriptor Class • The PropertyEditorSupport Class: • Enables you to create a text-based or a GUI based customized property editor. • Implements the PropertyEditor interface of the java.beans package. • Is extended by a class to create a customized property editor. Collaborate

  4. Method Description void addPropertyChangeListener( PropertyChangeListener pcl) Registers a new PropertyChangeListener to handle the PropertyChange events. The method accepts an object of PropertyChangeListener interface. void firePropertyChange() Informs all the listeners when there is a change in the JavaBean property. • The PropertyEditorSupport and PropertyDescriptor Class (Contd.) • The following table lists some methods of the PropertyEditorSupport Class: Collaborate

  5. Method Description void paintValue(Graphics g, Rectangle rec) Paints a graphics object in a rectangle on the screen area. The graphics to paint and the area in which the graphics is painted are passed as parameters to the paintValue() method. booleanisPaintable() Returns a boolean value that specifies if the JavaBean supports the paintValue() method. void removePropertyChangeListener(PropertyChangeListener plist) Removes a registered PropertyChangeListener from the list of listeners for the PropertyChange events. • The PropertyEditorSupport and PropertyDescriptor Class (Contd.) • The methods of PropertyEditorSupport class: (Contd.) Collaborate

  6. Method Description booleansupportsCustomEditor() Returns a boolean value that determines whether the property editor object supports the custom editor or not. String getAsText() Returns the string value of a JavaBean property. Component getCustomEditor() Returns a custom property editor as a component that enables you to edit the value of JavaBean properties. void setAsText(String text) Sets the value of a property to the string passed as a parameter to this method. • The PropertyEditorSupport and PropertyDescriptor Class (Contd.) • The methods of PropertyEditorSupport class: (Contd.) Collaborate

  7. Method Description String[] getTags() Returns an array of tag values that consists of all the possible values for a JavaBean property. void setValue(Object value) Sets the value of a JavaBean property to the value passed as parameter. Object getValue() Enables you to retrieve the value of a JavaBean property. • The PropertyEditorSupport and PropertyDescriptor Class (Contd.) • The methods of PropertyEditorSupport class: (Contd.) Collaborate

  8. The PropertyEditorSupport and • PropertyDescriptor Class (Contd.) • The PropertyDescriptor Class • The PropertyDescriptor Class restricts the JavaBean properties that are displayed in the Properties window. • To create customized properties window, you need to create an information class that contains information about the properties, events, and methods of a JavaBean. • The information class extends the SimpleBeanInfo class and have a name ending with BeanInfo. For example, • class PropBeanInfo extends SimpleBeanInfo • { • //Class body • } Collaborate

  9. The PropertyEditorSupport and • PropertyDescriptor Class (Contd.) • You also need to override the getPropertyDescriptors() method that returns an array of PropertyDescriptor objects in the PropBeanInfo class. For example, • public PropertyDescriptor[] getPropertyDescriptors() • { • //Method_body • } Collaborate

  10. Method Description MethodDescriptor[] getMethodDescriptors() Returns an array of the method descriptor objects of a JavaBean. The method descriptor objects are used to determine information about the various methods defined in a JavaBean. EventDescriptor[] getEventDescriptors() Returns an array of the event descriptor objects of a JavaBean. The event descriptor objects determine the information about the events associated with a JavaBean. • The BeanInfo Interface • The BeanInfo interface provides the methods that enable you to specify and retrieve the information about a JavaBean. • The following table lists some of the methods of BeanInfo interface: Collaborate

  11. Method Description PropertyDescriptor[] getPropertyDescriptors() Returns an array of the property descriptor objects of a JavaBean. The property descriptor objects are used to determine information about the various custom properties of a JavaBean. Image getIcon( int icon_type ) Returns a corresponding image object for one of the fields of the BeanInfo interface passed as a parameter to this method. The BeanInfo interface defines int fields, such as ICON_COLOR_32x32 and ICON_MONO_32x32 to represent icons. • The BeanInfo Interface(Contd.) • The methods of BeanInfo interface: (Contd.) Collaborate

  12. From the Expert’s Desk • In this section, you will learn: • Tips on: • Using the sample JavaBeans of BDK1.1 in Java 2 SDKv1.4.x • Creating a single manifest file that contains entries for multiple JavaBeans • FAQs on JavaBeans Collaborate

  13. Tips • Using the Sample JavaBeans of BDK1.1 in Java 2 • SDK v 1.4.x • The steps to use the sample JavaBeans of BDK in Java 2 SDK 1.4.x are: • Open the C:\BDK1.1\beans\demo\sunw\demo\buttons folder using the Windows Explorer. • Open the folder for the sample JavaBean, for example, open the folder for ExplicitButton JavaBean that is not supported by Java 2 SDK 1.4.x. Collaborate

  14. Tips • Using the Sample JavaBeans of BDK1.1 in Java 2 • SDK v 1.4.x(Contd.) • Change the code in the public EventSetDescriptor[]getEventSetDescriptors() method. For example, to load the ExplicitButton JavaBean, you need to change the following code: • EventSetDescriptor push = new EventSetDescriptor(beanClass, • "actionPerformed", java.awt.event.ActionListener.class, "actionPerformed"); • The preceding code should be changed to the following code: • EventSetDescriptor push = new EventSetDescriptor(beanClass, "action", java.awt.event.ActionListener.class, "actionPerformed"); Collaborate

  15. Tips • Using the Sample JavaBeans of BDK1.1 in Java 2 • SDK v 1.4.x(Contd.) • Compile all files of C:\BDK1.1\beans\demo\sunw\demo\buttons directory. • Download Microsoft nmake utility to the C:\BDK1.1\beans\beanbox directory from the following url: • ftp://ftp.microsoft.com/Softlib/MSLFILES/nmake15.exe • Add the C:\BDK1.1\beans\beanbox directory path to your system path. • Go to C:\BDK1.1\beans\demo and type: • nmake buttons.mk • Run BDK. The ExplicitButton JavaBean will get loaded in the BDK. Collaborate

  16. Tips • Creating Manifest File for Multiple JavaBeans • The syntax to define the entries for multiple JavaBean files in the same manifest file is: • Name: <beanFile1.class> • Java-Bean: <status> • Name: <beanFile2.class> • Java-Bean: <status> • Name: <file3.gif> • In the preceding syntax, a blank line is left between each of the file declarations. Collaborate

  17. FAQs • What type of JavaBean will you use to display the current time in an application? • You can display the current time in a Java application using a control JavaBean. The control JavaBean adds a new feature to an existing Java application. • How can you count the number of hits for a particular Web page using JavaBeans? • You can count the number of hits for a Web page using an invisible runtime JavaBean. This JavaBean performs a hidden background function. Collaborate

  18. FAQs (Contd.) • How would you change the foreground color of a component using JavaBeans? • The foreground color of a component can be changed using the JavaBean properties. You need to create a JavaBean for the component and define a property, foreground color for the component. The setForegroundColor() method for the JavaBean property can be used to specify and change the value of the foreground color for the JavaBean component. Collaborate

  19. FAQs (Contd.) • What is introspection? • Introspection is the process of examining the class structure of a JavaBean and determining the properties, methods, and events supported by the JavaBean. Introspection helps you to find only the list of methods and the method signatures of a JavaBean. It does not help you to find the source code of the methods and how the JavaBean functionality has been implemented. The introspection technique is used by a programmer during the design and build phases to identify the JavaBean functionality. The end user will not be interested in knowing the internal functionalities of a JavaBean. Collaborate

  20. FAQs (Contd.) • Where is the manifest file of a JavaBean stored in the JAR file? • The manifest file is stored inside the directory, META-INF inside the JAR file. • How does the compiler recognize the file to execute while running a JAR file? • When a JAR file is executed, the Main-Class entry in the manifest file instructs the java -jar command about the class to execute. The java -jar command enables you to execute a runnable JAR file on the command prompt. The -jar option enables the Java Runtime Environment (JRE) to recognize that the specified file is a runnable JAR file. The command to execute a runnable JAR file, SampleJar.jar, on the command prompt is: • java -jar SampleJar.jar Collaborate

  21. Challenge • Select the option that allows you to view the sequence of method invocation in BDK 1.1: • ToolBox Window • BeanBox Window • Method Tracer Window • Properties Window • What is the use of the addPropertyChangeListener() method of the PropertyEditorSupport class? • Select the class that you need to use for implementing bound properties in JavaBeans: • PropertyChangeSupport class • VetobaleChangeSupport class • ProperyChangeEvent class • PropertyDescriptor class Collaborate

  22. Challenge (Contd.) • The PropertyEditorSupport class implements the __________interface. • What is the purpose of implementing the BeanInfo interface for a JavaBean? • The ___________enables you to modify the JavaBean properties that are displayed in the property sheet. Collaborate

  23. Solutions to Challenge • c. Method Tracer Window • The addPropertyChangeListener() method registers a new listener to handle the PropertyChange events. • a. PropertyChangeSupport class • PropertyEditor • The BeanInfo interface enables you to provide the information about the properties, events, and methods of a JavaBean in the JavaBean information class. • Property Editors Collaborate

More Related