[JAVA SWING] Property ChangeListener

Pagina: 1
Acties:

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Hey,

Ik heb een programmaatje gemaakt met een JTable er in. Nu wil ik daar een PropertyChangeListener aan vast binden die zodra er wat veranderd deze gegevens naar de database stuurt.

In de klasse waar de JTable in staat heb ik dit:
code:
1
2
PropertyChangeListener listener = new PropertyChangeListener;
tabel.addPropertyChangeListener(listener);

en dan heb ik nog een klasse met de PropertyChangeListener:
code:
1
2
3
4
5
class PropertyChangeListener  {
  public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
    String property = propertyChangeEvent.getPropertyName();
  }
}

De methode's moeten hier nog ingevuld worden.

Het probleem is nu dat ie die PropertyChangeListener niet herkend. Moet deze klasse ook ergens van extenden of implementen ??

Ik heb al gezocht op java.sun.com maar dat vind ik zo'n vage ruk site want van al die api's word het ook niet duidelijk

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
je moet een DocumentListener hangen aan je TableModel niet aan je JTable... alle swing toestanden zijn Document Centric dus je kunt dus best altijd met het document(model daar zijn ze bij Java niet consistent in) werken...

Verwijderd

je moet in je klasse wel de interface implementeren + een contructor heeft haakjes...

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Je moet hem natuurlijk wel ergens op implementeren:

vb:

code:
1
2
3
4
5
class VoornaamListener implements PropertyCHangeListener{
      public void propertyChange(PropertyCHangeEvent pce){
            .....
      }
}


En dan als volgt aansluiten:
Persoon jan = ...;
jan.addPropertyChangeListener(Persoon.VOORNAAM, new VoornaamListener());

En je moet die tablemodel NIET gebruiken om vanuit te werken. Je moet gewoon een datastructuur maken (een persoonList bv) waarin alle personen staan. Hierdoor kan jij je tablemodel vullen. Het doel van die tablemodel is alleen om de view te ondersteunen, hij mag NIET gebruikt worden als domein model.

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

hobbit_be schreef op 31 March 2003 @ 16:03:
je moet een DocumentListener hangen aan je TableModel niet aan je JTable... alle swing toestanden zijn Document Centric dus je kunt dus best altijd met het document(model daar zijn ze bij Java niet consistent in) werken...
Ik geloof dat jij een andere Swing hebt dan ik. Dit is dus niet correct.

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
hobbit_be schreef op 31 March 2003 @ 16:03:
je moet een DocumentListener hangen aan je TableModel niet aan je JTable... alle swing toestanden zijn Document Centric dus je kunt dus best altijd met het document(model daar zijn ze bij Java niet consistent in) werken...
Kan je dit mischien een beetje uitleggen want dit vat ik niet helemaal

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Check dit eerst maar voordat je hier verder gaan vragen.

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
WHAAAAAAAA ik haat java.sun.com !! Toen ik een paar jaar geleden begon programmeren te leren in visual basic had ik genoeg aan alleen de help file. Daar werd alles zo duidelijk uitgelegd en daar werd het ook duidelijk gemaakt dmv code voorbeelden en dat mis ik zo erg op java.sun.com

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Dan ga je toch weer lekker proggen in vb?

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Alarmnummer schreef op 31 March 2003 @ 16:08:
Check dit eerst maar voordat je hier verder gaan vragen.
Eindelijk een duidelijk voorbeeld ;)

  • emkedouwe
  • Registratie: September 2001
  • Laatst online: 26-11-2021
Alarmnummer schreef op 31 maart 2003 @ 16:12:
Dan ga je toch weer lekker proggen in vb?
Mag niet van school :)
Pagina: 1