On Mon, 9 Dec 2002 12:51:34 +0100, "Morten Nørgaard"
<morten.norgaard@uni-c.dk> wrote:
>Hej,
>
> jeg forsøger at finde frem til den bedste måde at håndtere child-events
>i en parent-komponent. På en JFrame har jeg en JComboBox. Når en bruger
>vælger et item i denne combo-box, skal JFrame'n vise en dialog-boks med
>combo-box'ens valgte item-nummer. Men hvordan gør man det bedst (= pænest).
>Det lader til at der er flere forskellige veje man kan gå, f.eks.
>Observer/Obsevable eller interfaces. Jeg er lidt forvirret mht. bedste
>fremgangsmåde, og håber at nogen har et bud.
Det er ikke så galt. Tænk MVC. Din JFrame er Controlleren, din
combobox er Modellen, og dialogen Viewet. Med andre ord, så lad din
jframe aflæse værdien (vha. events) i comboboxen, og så skal den
delegere denne værdi videre til dialogen.
En anden mulighed er at lave et objekt som er observable, som din
jcombobox kan ændre på (en eventlistener i jframen), og som din dialog
også kan ændre/lytte på (en event listener i dialogen, giv observable
til dialogen på een eller anden måde).
Det hele kommer lidt an på din konstruktion:
Skal din jframe åbne dialogen og give en værdi videre til dialogen,
hvorefter du er ligeglad med comboboxen indtil du lukker dialogen
igen? Så brug den første løsning.
Skal din dialog reagere på at der bliver ændret i jcomboboxen, mens
dialogen er åben? Så brug den sidste løsning.
>På forhånd tak,
>
>Morten.
>
vh. ld
---
"Time is the fire in which we burn"
|