RHS   Allan   C#.NET Øvelser TouristicRental05


 

TouristicRental05

Nu skal vi lave en GUI til vore simple cykel-udlejning!

Klassen Shop skifter karakter idet vi nu skal have en interaktiv brugergrænseflade til at varetage udlejning og afregning.
Shop bliver nu en controller - faktisk en slags "mastercontroller" da det er her vi starter programmet og initialiserer vigtige datastrukturer.
Du bør downloade min udgave så vi har et fælles udgangspunkt for denne øvelse: Shop (efter download skal du omdøbe filen til Shop.cs - husk at tilføje den til dit projekt)

Metoden Init() skal stadig bruges til at indlæse filen "cykler.dat".
Jeg har ændret den lidt så ved enhver fejl vedr. indlæsning af fil bliver listen af cykler dannet "manuelt" og denne nye liste forsøges gemt som "cykler.dat" i CreateBicyclesFile().

Metoderne Open() og Close() skal ikke længere bruges - de erstattes af en GUI.

Da der bliver behov for at andre klasser kan tilgå Shop's datastrukturer er der en get-property for både cykel-listen (Bikes) og udlejnings-listen (Rentals) .
Desuden er der en get+set-property for omsætningen (Sale).

I Main() udføres Init() på et Shop-object og derefter startes vores MainForm GUI.
Til denne form overføres objektet shop.

MainForm skal se således ud (bare nogenlunde):

   

Alle tre knapper skal bruges i kode så de bør gives ordentlige navne.
I midten er en TextBox (også navngivet) med følgende ændringer i Properties:

I koden er der følgende ændringer:

Når man klikker på "Rent bike" knappen udfører den tilhørende metode flg.: hoved-vinduet skjules, der dannes et objekt af typen RentBikeForm som modtager reference til hoved-vinduet samt referencen til shop-objektet, til sidst vises RentBikeForm vinduet

   

Begge TextBox'e, knappen og den sidste label skal tilgås fra koden og bør derfor navngives ordentligt.
I koden er flg. ændringer:

 

Knappen "Finish rental" får liv i næste øvelse som også vil forbedre strukturen en anelse.


Maintained by: Allan Helboe Nielsen
Updated: 3 November, 2005 1:04