Ik zit met een heel stom probleem dat ik niet opgelost krijg. Waarschijnlijk zal de oplossing vrij triviaal zijn, maar ik vind er echt geen.
De situatie:
Ik heb een JDialog box met daarin een JList met een lijst applicaties. Deze box wordt vanop verschillende punten aangeroepen (een applicatie editten, een aantal applicaties toevoegen aan een lijst, etc.). Wat de box dus moet doen is als er op ok wordt gedrukt een lijst met applicaties teruggeven aan de oproepende methode. Als er op Cancel wordt gedrukt, of als het window gesloten wordt, moet er een lege lijst terug gegeven worden. Ik maak deze box elke keer opnieuw aan (dat moet in principe niet, maar is op het moment het gemakkelijkste, ivm dynamisch laden van die applicaties moet die inhoud toch elke keer volledig veranderen).
Het probleem:
Dat lukt me niet, of toch niet ordelijk. Want, ik moet de methode die die lijst moet terug geven laten wachten tot er op een knop gedrukt is. Aangezien het Java 1.4.2 is heb ik niet meteen barriers en toestanden ter beschikking, waar ik het normaal mee zou doen. Wat ik zou kunnen doen is loopen tot er een boolean geset wordt dat er op een knop gedrukt is, maar dat is zo lelijk, niet?
Wat ik dus wil doen:
Hoe doe ik het nu?
Nu moet je in de constructor van de box een ActionListener meegeven, en die dus zelf implementeren. Ik vond dat al geen mooie oplossing, maar ok. Mijn controler implementeert nu dus de ActionListener. Nu, ik wou net dubbel click events toevoegen, wat hiermee dus niet lukt.
Wat heb ik gedaan om het te proberen op te lossen?
- Java concurrency in practice zitten doorlezen, maar de methodes daarin om zoiets op te lossen hebben Java 5 nodig.
- Op het internet voorbeeldjes proberen te vinden, maar absoluut niets gevonden.
De situatie:
Ik heb een JDialog box met daarin een JList met een lijst applicaties. Deze box wordt vanop verschillende punten aangeroepen (een applicatie editten, een aantal applicaties toevoegen aan een lijst, etc.). Wat de box dus moet doen is als er op ok wordt gedrukt een lijst met applicaties teruggeven aan de oproepende methode. Als er op Cancel wordt gedrukt, of als het window gesloten wordt, moet er een lege lijst terug gegeven worden. Ik maak deze box elke keer opnieuw aan (dat moet in principe niet, maar is op het moment het gemakkelijkste, ivm dynamisch laden van die applicaties moet die inhoud toch elke keer volledig veranderen).
Het probleem:
Dat lukt me niet, of toch niet ordelijk. Want, ik moet de methode die die lijst moet terug geven laten wachten tot er op een knop gedrukt is. Aangezien het Java 1.4.2 is heb ik niet meteen barriers en toestanden ter beschikking, waar ik het normaal mee zou doen. Wat ik zou kunnen doen is loopen tot er een boolean geset wordt dat er op een knop gedrukt is, maar dat is zo lelijk, niet?
Wat ik dus wil doen:
Java:
1
2
| ApplicationChooser chooser = new ApplicationChooser(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); ArrayList appList = chooser.getSelectedApps(); |
Hoe doe ik het nu?
Nu moet je in de constructor van de box een ActionListener meegeven, en die dus zelf implementeren. Ik vond dat al geen mooie oplossing, maar ok. Mijn controler implementeert nu dus de ActionListener. Nu, ik wou net dubbel click events toevoegen, wat hiermee dus niet lukt.
Wat heb ik gedaan om het te proberen op te lossen?
- Java concurrency in practice zitten doorlezen, maar de methodes daarin om zoiets op te lossen hebben Java 5 nodig.
- Op het internet voorbeeldjes proberen te vinden, maar absoluut niets gevonden.