© 1999-2003, Flemming Koch Jensen
Alle rettigheder forbeholdt
Command Pattern

Vejledning løsninger
Opgaver

 

 

1 På internettet har man i årtier været vant til kun at kunne kommunikere vha. tekst. Derfor har man udviklet forskellige tekstuelle virkemidler der understøtter betydningen af det man skriver. En af disse er: at råbe. Når man skriver et stykke tekst hvor alle bogstaver er skrevet med stort, indikerer det at afsenderen RÅBER det.
  I denne opgave vil vi anvende denne konvention, og vi vil til lejligheden udvide den, således at tekst skrevet med ene små bogstaver hviskes.
shout and whisper Da bogstavet 'Å' giver problemer i forbindelse med klassenavne, anbefales det at man i forbindelse med løsningen af denne opgave holder sig til de engelske betegnelser shout (dk.: råbe) og whisper (dk.: hviske) i kildeteksten.
   
  Vi skal lave følgende frame:
Figur 1:
TalkFrame

  Da det ikke er meningen, at man skal bruge nævneværdig tid på at arbejde med layout i denne opgave, har vi valgt et simpelt FlowLayout.
  Applikationen fungerer på den måde at man skriver en tekst i tekstfeltet og trykker på knappen Snak. Dette bevirker at teksten i tekstfeltet udskrives enten råbende eller hviskende, alt efter hvilken af de to radiobuttons, Råb og Hvisk, der er aktiveret. Tekstfeltet slettes efter hvert tryk på Snak. Initielt skal Hvisk være valgt.
   
  Lav klasserne fra følgende klassediagram:
Figur 2:
Klasse-diagrammet

  Command-klasserne skal have en reference til tekstfeltet så de kan hente tekstindholdet og sende det til Receiver'ne.
  Lav en klasse TalkFrame, der opbygger objektsystemet og er ActionListener på de to radiobuttons. Lav også en Test-klasse der instantierer en TalkFrame.