Overview Package Class Tree Deprecated Index Help
Prev Class Next Class Frames No Frames All Classes
Summary: Nested | Field | Constr | Method Detail: Field | Constr | Method
heg.util
Class MaListeElements<E>
java.lang.Object
java.awt.Component
java.awt.List
heg.util.MaListeElements<E>
Type Parameters:
E -
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.ItemSelectable, java.awt.MenuContainer, java.io.Serializable,
javax.accessibility.Accessible
public class MaListeElements<E>
extends java.awt.List
Implémentation de la classe MaListeElements
Objectifs :
Construction d'un composant graphique par dérivation;1. Démonstration de la notion de réutilisation par héritage;2. Démonstration de la notion de spécialisation par redéfinition, ajout et suppression de méthodes;3. Utilisation de la généricité et rendre générique un classe ne l'étant pas à l'origine;4. Gestion d'une liste de références sur des objets;5. Intégration d'un composant dans un IDE.6.
La classe de base du composant est java.awt.List qui présente une liste sur l'interface graphique.
Cette liste est composée de textes (Strings) sélectionnables et gère un ensemble d'événements. Cette classe
possède naturellement des propriétés et des méthodes. Il faudra utiliser celles qui nous intéressent, modifier
celles qui ne sont pas adaptées et supprimer celles qui deviennent inutiles (voir sensibles).
Dans cette version, on pose que ce sont les clients qui sont responsables de la validité des données.
Principe de base
Dériver MaListeElements de java.awt.List;1. Rendre générique la classe : MaListeElements< E >;2. Intégrer une structure de données pour la gestion des références sur les objets de classe E;3. Ajuster les constructeurs, les attributs et les méthodes répondant au cahier des charges.4.
Les constructeurs de la classe parente (java.awt.List) conviennent parfaitement et nous les utiliserons donc.
MaListeElements () : création d'une nouvelle liste vide (4 lignes vides par défaut) et sélection unique;1. MaListeElements (int) : création d'une nouvelle liste vide avec n lignes visibles et sélection unique;2. MaListeElements (int, boolean) : création d'une nouvelle liste vide avec n lignes visibles et sélection unique ou
multiple.
3.
Les méthodes :
Inhibition : car le parent gère uniquement le type classe String et nous voulons rendre générique
MaListeElements
1.
void add (String)1. void add (String, int)2. String getItem (int)3. String[] getItem ()4. String getSelectedItem ()5. String[] getSelectedItems ()6. void remove (String)7.
MaListeElements file:///D:/a/heg/util/MaListeElements.html
1 sur 12 11.05.2013 13:46
void replaceItem (String, int)8.
Surcharge : permet de rendre générique tout en conservant les noms des méthodes2. (Surcharge : lors d'un héritage, même nom mais signatures différentes)
void add (E)1. void add (E, int)2. void remove (E)3.
Redéfinition : pour adapter le comportement3. (Redéfinition : lors d'un héritage, même nom et mêmes signatures)
Object[] getSelectedObjects()1. void remove(int)2. void removeAll()3.
Nouvelles ou remplacent : permet d'ajouter de nouvelles fonctionnalités4. (Peuvent remplacer fonctionnellement d'autres méthodes inhibées)
E getElem (int)1. E[] getElem ()2. E getSelectedElem ()3. E[] getSelectedElem ()4. void replaceElem (E, int)5.
Remarque :
Dans le cadre de classes générique, il y a des "type guard" qu'il n'est pas possible de vérifier (car le type
générique n'est justement pas encore connu et pas dans le byte code). La vérification de pourra se faire qu'a
l'exécution.
Un warning est généré à la compilation. Pour supprimer le message de warning, il faut faire précéder la
définition de la méthode par :
@SuppressWarnings("unchecked")
Pour la préparation du jar :
jar cf MaListeElements.jar MaListeElements.class
See Also:
Serialized Form
Nested Class Summary
Nested classes/interfaces inherited from class java.awt.List
java.awt.List.AccessibleAWTList
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent,
java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy,
java.awt.Component.FlipBufferStrategy
Field Summary
Modifier and Type Field and Description
protected java.util.ArrayList<E>el
Vecteur mémorisant les références sur les éléments de la
liste (qui sont des objets) Le type de ces éléments DOIT être E
Fields
MaListeElements file:///D:/a/heg/util/MaListeElements.html
2 sur 12 11.05.2013 13:46
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor Summary
Constructor and Description
MaListeElements()
Constructeur : création d'une nouvelle liste vide (4 lignes vides par défaut) et possibilité de sélection unique
dans le composant liste graphique
Utilisation du constructeur correspondant du parent (java.awt.List)
MaListeElements(int rows)
Constructeur : création d'une nouvelle liste vide avec n lignes visibles (taille du composant) et possibilité de
sélection unique dans le composant liste graphique
Utilisation du constructeur correspondant du parent (java.awt.List)
MaListeElements(int rows, boolean multipleMode)
Constructeur : création d'une nouvelle liste vide avec n lignes visibles (taille du composant) et sélection unique
ou multiple dans le composant liste graphique
Sélection multiple
true : sélection multiple false: sélection unique
Method Summary
Modifier and Type Method and Description
void add(E e)
Ajoute un élément (e de classe E) à la fin de la liste.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets La structure de java.awt.List qui mémorise les
chaînes de caractères affichées sur le GUI
Afin qu'il puisse être possible de renseigner le parent (java.awt.List) toutes les
classes des objets placés dans MaListeElements doivent redéfinir toString() qui
composera la chaîne de caractères présentée à l'utilisateur dans le
composant graphique.
Surcharge :add(String)
void add(E e, int index)
Ajoute un élément (e de classe E) à la position index.
void add(java.lang.String item)
Deprecated.
void add(java.lang.String item, int index)
Deprecated.
E getElem(int index)
Retourne une référence de type E le l'élément spécifié par son index.
Une seule structures est impactée : La liste locale (el) qui mémorise les
références sur les objets de classe E
Constructors
Methods
MaListeElements file:///D:/a/heg/util/MaListeElements.html
3 sur 12 11.05.2013 13:46
Remplace :getItem(int)
E[] getElems()
Retourne un tableau de références sur les objets de type E de l'ArrayList el.
Le compilateur ne pourra pas vérifier le type des éléments du tableau.
Remarquer l'utilisation de "@SuppressWarnings("unchecked")" pour indiquer u
compilateur que l'on sait exactement ce que l'on fait et que l'on a pas besoin
d'avertissement.
Une seule structures est impactée : La liste locale (el) qui mémorise les
références sur les objets de classe E
Remplace :getItems()
java.lang.String getItem(int index)
Deprecated.
java.lang.String[] getItems()
Deprecated.
E getSelectedElem()
Retourne la référence de l'objet de type E correspondant à la ligne
sélectionnée sur le composant.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets de la liste La structure de java.awt.List qui mémorise
les chaînes de caractères affichées sur le GUI
Principe : récupérer l'index de l'élément sélectionné dans le GUI et
rechercher la référence de l'objet de type E correspondante
Remplace :getSelectedItem()
E[] getSelectedElems()
Retourne une collection de références de type E sur les éléments
sélectionnés.
java.lang.String getSelectedItem()
Retourne le texte généré par le toString de l'objet de type E correspondant à la
ligne sélectionnée sur le composant.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets de la liste La structure de java.awt.List qui mémorise
les chaînes de caractères affichées sur le GUI
Principe : récupérer l'index de l'élément sélectionné dans le GUI et
rechercher la référence de l'objet de type E correspondante
Remplace :getSelectedItem()
java.lang.String[] getSelectedItems()
Deprecated.
java.lang.Object[] getSelectedObjects()
//........................................
void remove(E elem)
Supprime la premiètre occurence de l'élément passé en paramètre de la liste.
Deux structures sont impactées : La liste locale (el) qui mémorise le texte
présenté dans l'interface GUI La structure de java.awt.List qui mémorise la
référence sur l'objet correspondant
Afin qu'il puisse être possible de renseigner le parent (java.awt.List) toutes les
classes des objets placés dans MaListeElements doivent redéfinir toString() qui
composera la chaîne de caractères présentée.
Sucharge :remove(String)
void remove(int index)
Supprime un élément à la position indiquée par index.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets de la liste La structure de java.awt.List qui mémorise
les chaînes de caractères affichées sur le GUI
Le principe est de supprimer l'élément dans les deux structures.
Redéfini :remove(int)
void remove(java.lang.String item)
Deprecated.
MaListeElements file:///D:/a/heg/util/MaListeElements.html
4 sur 12 11.05.2013 13:46
void removeAll()
Supprime tous les éléments de la liste.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets de la liste La structure de java.awt.List qui mémorise
les chaînes de caractères affichées sur le GUI
Le principe est de supprimer les éléments dans les deux structures.
Redéfini :removeAll()
void replaceElem(E e, int index)
Remplace l'élément désigné par la position index par l'élément passé en
référence.
Deux structures sont impactées : La liste locale (el) qui mémorise les
références sur les objets de la liste La structure de java.awt.List qui mémorise
les chaînes de caractères affichées sur le GUI
Principe : remplacer dans les deux structures
Remplace :replaceElem()
void replaceItem(java.lang.String item, int index)
Deprecated.
Methods inherited from class java.awt.List
addActionListener, addItem, addItem, addItemListener, addNotify,
allowsMultipleSelections, clear, countItems, delItem, delItems, deselect,
getAccessibleContext, getActionListeners, getItemCount, getItemListeners,
getListeners, getMinimumSize, getMinimumSize, getPreferredSize, getPreferredSize,
getRows, getSelectedIndex, getSelectedIndexes, getVisibleIndex, isIndexSelected,
isMultipleMode, isSelected, makeVisible, minimumSize, minimumSize, paramString,
preferredSize, preferredSize, processActionEvent, processEvent, processItemEvent,
removeActionListener, removeItemListener, removeNotify, select, setMultipleMode,
setMultipleSelections
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener,
addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener,
addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener,
addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet,
bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage,
createImage, createVolatileImage, createVolatileImage, deliverEvent, disable,
disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents,
enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange,
firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange,
firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground,
getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel,
getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation,
getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners,
getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics,
getForeground, getGraphics, getGraphicsConfiguration, getHeight,
getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint,
getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners,
getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize,
getMouseListeners, getMouseMotionListeners, getMousePosition,
getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners,
getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth,
getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate,
isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled,
isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet,
isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque,
isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list,
list, list, list, list, locate, location, lostFocus, mouseDown, mouseDrag,
mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll,
postEvent, prepareImage, prepareImage, print, printAll, processComponentEvent,
processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent,
processInputMethodEvent, processKeyEvent, processMouseEvent,
processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener,
removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener,
removeInputMethodListener, removeKeyListener, removeMouseListener,
removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener,
removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus,
MaListeElements file:///D:/a/heg/util/MaListeElements.html
5 sur 12 11.05.2013 13:46
1 / 12 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !