Simpel GUI-programmering Vejledende løsninger | Opgaver |
1 |
Lav følgende vindue: | |
Figur 1: Vindue til addition |
|
|
Vinduet skal fungere på den måde at summen af de to argumenter, der angives i de to hvide felter, udskrives i det grå felt til højre i vinduet. | ||
2 |
Lav følgende vindue: | |
Figur 2: Vindue med aritmetiske operationer |
|
|
Vinduet skal fungere på den måde at når man trykker på en af knapperne, skal den tilsvarende operation udføres på de tal der står i de to hvide felter og resultatet skal vises i det grå felt til højre (Vær opmærksom på, at det grå felt til højre bliver bredt nok til at kunne vise hele resultatet ved division) | ||
3 | [Ikast Handelsskole: Datamatiker - Konstruktions-reeksamen, 23. januar 2001: Opgave 2] | |
3.1 | Betragt følgende vindue: | |
|
||
I dette vindue er det muligt at indtaste tre heltal og få beregnet deres sum, når man trykker på knappen med lighedstegnet, | ||
Følgende vindue viser et eksempel på dette: | ||
|
||
Hvis man undlader at indtaste et tal i et af felterne, eller taster noget der ikke er et heltal, bliver det ignoreret - med andre ord bliver det betragtet som 0. | ||
Følgende vindue viser et eksempel; hvor der i det tredje felt er indtastet noget fejlagtigt: | ||
|
||
I yderste tilfælde kan alle felter være fejlagtige, som det er vist i følgende vindue: | ||
|
||
Det er ikke muligt at indtaste værdier i det grå felt. | ||
Når man lukker vinduet skal applikationen terminere. | ||
Lav en klasse SummerFrame, der implementerer ovenstående vindue med den anførte funktionalitet. | ||
3.2 | Vi ønsker at lave en mere dynamisk udgave af klassen SummerFrame fra opgave 3.1. | |
Betragt følgende vindue: | ||
|
||
Her er der fem felter i stedet for de tre i opgave 3.1. | ||
Vi ønsker at lave en udgave af SummerFrame, der gør det muligt at arbejde med et forskelligt antal felter, alt efter hvad vi måtte ønske. | ||
Lav ændringer i SummerFrame så dens konstruktor tager antallet af felter som parameter, og opbygger sig selv, så den får det ønskede antal felter. | ||
Funktionaliteten er i øvrigt som beskrevet i opgave 3.1 | ||
4 | [Ikast Handelsskole: Datamatiker - Konstruktions-eksamen, 6. januar 2000: Opgave 5] | |
Betragt følgende vindue: | ||
|
||
I venstre side er der to felter til indtastning af heltal. Når man trykker på knappen Min bliver det mindste af de to tal fra indtastningsfelterne vist i feltet til højre. Tilsvarende bliver det største tal vist; hvis man i stedet trykker på Max. | ||
Hvis et eller flere af de to indtastningsfelter ikke indeholder et heltal når man trykker på en af knapperne skal der udskrives en fejl-meddelelse i feltet til højre. Hvis man f.eks. helt undlader at indtaste noget i nogen af de to indtastningsfelter vil man få følgende billede efter at have trykket på Min: | ||
|
||
Når man lukker vinduet skal programmet terminere. | ||
Lav en klasse MinMaxFrame, der implementerer ovenstående vindue med den anførte funktionalitet. | ||
5 | [Ikast Handelsskole: Datamatiker - Konstruktions-reeksamen, 20. januar 2000: Opgave 2] | |
Betragt følgende vindue: | ||
|
||
I venstre side er der et felt til indtastning af et heltal. Når man trykker på knappen Halv bliver det halve af tallet fra indtastningsfeltet vist i feltet til højre. Tilsvarende bliver det dobbelte af tallet vist; hvis man i stedet trykker på Dobbelt. | ||
Hvis indtastningsfeltet ikke indeholder et heltal, når man trykker på en af knapperne, skal der udskrives en fejl-meddelelse i feltet til højre. Hvis man f.eks. helt undlader at indtaste noget i indtastningsfeltet vil man få følgende billede efter at have trykket på Halv: | ||
|
||
Når man lukker vinduet skal programmet terminere. | ||
Lav en klasse HalvDobbeltFrame, der implementerer ovenstående vindue med den anførte funktionalitet. |