Näytä tapahtumatKun Näytä tapahtumat on valittuna, kunkin komponentin käyttämät tapahtumat näytetään alielementteinä rakenne-esityksessä.
Tapahtumat on merkitty vihreillä nuolilla
, ja ominaisuusmuutostapahtumat on merkitty sinisillä nuolilla
.
Jotta komponentti voi käyttää
tapahtumaa, sillä on oltava rekisteröity kuuntelutoiminto, ja vastakutsumetodissa on oltava
koodia. Graafisen muokkausohjelman käyttämien tunnistettujen lähdekoodimallien
luettelo on kuvattu tapahtumaosan lähdekoodimallissa. Seuraavassa kuvassa Java-bean-komponentti-näkymässä on JFrame-kehys, jossa
on windowOpened-tapahtuma ja actionPerformed-tapahtuman sisältävä painike. Painikkeen
käytössä olevissa ominaisuuksissa on myös PropertyChangeListener-kuuntelutoiminto, joka
on ilmaistu sinisellä nuolella vihreän sijasta.

Kukin
tapahtuma koostuu lähdekomponentista (esimerkissä JFrame tai JButton), lähteeseen
addXXXListener(XXXListener)-metodilla lisättävästä kuuntelutoimintoliittymän toteuttavasta luokasta ja koodista
vastakutsumetodin rungossa.
AsiantuntijatapahtumatAsiantuntijatapahtumat-tilassa
komponentin kukin kuuntelutoiminto näytetään alirakenteen solmuna, ja tapahtumat
näytetään kunkin kuuntelutoiminnon alapuolella. Tämä lisää rakenne-esityksessä olevien kohteiden
määrää, mutta näyttää tarkemmat tiedot siitä, miten tapahtumat liitetään komponentteihin.
Kahden tilavaihtoehdon avulla voit valita, millaisen tietomäärän
haluat käyttöön.
Asiantuntijatilassa kuuntelutoiminnon kuvake ilmaisee
kuuntelutoimintoluokan tyypin. Jos kuuntelutoiminto on nimetön sisäinen luokka, joka toteuttaa
kuuntelutoimintoliittymän, järjestelmä käyttää kuvaketta
, ja jos kuuntelutoiminto on nimetön sisäinen luokka, joka
laajenee kuuntelutoiminnon sovitinluokkaan, järjestelmä käyttää kuvaketta
.
Sen lisäksi, että kuuntelutoiminnoissa käytetään nimettömiä sisäisiä luokkia, graafinen muokkausohjelma jäsentää ja tunnistaa myös nimetyt luokat
ja yhteiskuuntelutoiminnot.
Jos kuuntelutoiminto ei ole nimetön asiantuntijatilassa, kuvake on
. Jos kuuntelutoiminto on yhteinen useilla
komponenteilla, käytössä on
. Jos kuuntelutoimintoluokka on yhden tapahtuman käytössä, nämä
merkitään kuuntelutoiminnon aliobjekteiksi. Jos kuuntelutoimintoluokka on kuitenkin
useiden komponentin tapahtumakuuntelutoimintoliittymien käytössä, asiantuntijatilassa
nämä liittymät näytetään erillisinä kuuntelutoimintoluokan aliobjekteina, kuten
seuraavassa kuvassa:

Tämän lähde näkyy seuraavassa
koodilauseessa. Ensimmäinen painike (this) käyttää sisäistä kuuntelutoimintoluokkaa IvjEventHandler kerran
keyPressedEvent-tapahtumaan, ja "Peruuta"-painike käyttää sitä kaksi kertaa,
kerran keyPressed-tapahtumaan (joka on osa näppäintapahtumaa) ja toisen kerran actionPerformed-tapahtumaan
(joka on osa toimintotapahtumaa).
class IvjEventHandler implements java.awt.event.ActionListener, java.awt.event.KeyListener { public void actionPerformed(java.awt.event.ActionEvent e) {
if (e.getSource() == VCEStyle2.this.getCancelButton())
connEtoC3(e);
};
public void keyPressed(java.awt.event.KeyEvent e) {
if (e.getSource() == VCEStyle2.this.getCancelButton())
connEtoC2(e);
if (e.getSource() == VCEStyle2.this)
connEtoC1(e);
};
public void keyReleased(java.awt.event.KeyEvent e) {};
public void keyTyped(java.awt.event.KeyEvent e) {};
};