Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell.

Liknende presentasjoner


Presentasjon om: "Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell."— Utskrift av presentasjonen:

1 Eksempel: Administrasjon av biler

2 Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell –Avslutte: Skriver tabell til fil før programmet avsluttes –Starter opp: Leser biler tidligere registrert inn fra fil til tabell. (Når den er lest inn kan den eventuelt sorteres)

3 Registrer bil •Opplysninger om bil: –merke –modell –årsmodell •Feltene MÅ fylles ut •Etter hvert som biler registreres legges de inn i en tabell "biler()"

4 I Form’en Public Class Form1 Structure Bil Dim merke As String Dim modell As String Dim arsmodell As Integer End Structure Dim biler() As Bil Dim bilteller As Integer

5 Registrering av bil i tabell Private Sub btnRegistrer_Click(…) Handles btnRegistrer.Click Dim nyBil As Bil If bilteller = 0 And biler.Length = 0 Then ReDim biler(bilteller) Else bilteller = biler.GetUpperBound(0) + 1 ReDim Preserve biler(bilteller) End If If (txtMerke.Text = "" Or txtModell.Text = "" Or txtArsmodell.Text = "") Then MsgBox("Du MÅ gi alle opplysninger") Else nyBil.merke = txtMerke.Text nyBil.modell = txtModell.Text nyBil.arsmodell = CInt(txtArsmodell.Text) biler(bilteller) = nyBil bilteller += 1 lstRegistrerte.Items.Add(nyBil.merke & ", " & nyBil.modell & ", " & nyBil.arsmodell) End If End Sub

6 Skrive til fil Private Sub btnAvslutt_Click(…) Handles btnAvslutt.Click lagreTilFil(biler) End End Sub Sub lagreTilFil(ByVal biler() As Bil) 'skriver innholdet i en tabell til fil Dim i As Integer Dim sw As IO.StreamWriter = IO.File.CreateText("c:\biler.txt") For i = 0 To biler.GetUpperBound(0) sw.WriteLine(biler(i).merke) sw.WriteLine(biler(i).modell) sw.WriteLine(biler(i).arsmodell) Next sw.Close() MsgBox("Bilene er lagret i biler.txt. Takk for nå! ") End Sub

7 Lese inn tabell Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'henter data fra fil og sorterer alfabetisk etter merke leseFilTilTabell("c:\biler.txt") 'sortertabell(biler) End Sub Sub leseFilTilTabell(ByVal filnavn As String) 'MsgBox("Lesing er ikke ferdig ennå!") Dim sr As IO.StreamReader = IO.File.OpenText(filnavn) Dim antallBiler As Integer Do While sr.Peek <> -1 sr.ReadLine() antallBiler += 1 Loop sr.Close() ReDim biler(antallBiler - 1) sr = IO.File.OpenText(filnavn) Dim enBil As Bil For i As Integer = 0 To biler.GetUpperBound(0) enBil.merke = sr.ReadLine() enBil.modell = sr.ReadLine() enBil.arsmodell = CInt(sr.ReadLine()) biler(i) = enBil lstRegistrerte.Items.Add(enBil.merke & ", " & enBil.modell & ", " & enBil.arsmodell) Next sr.Close() MsgBox("Bilene er lest inn fra filen.... Du kan nå registrere nye biler") End Sub

8 Sortere tabell Private Sub sortertabell(ByRef tabell() As Bil) 'sorterer en tabell med biler Dim i, j, maks As Integer maks = tabell.GetUpperBound(0) For i = 0 To maks - 1 For j = i + 1 To maks If (tabell(i).merke.ToUpper > tabell(j).merke.ToUpper) Then bytt(tabell(i), tabell(j)) End If Next End Sub 'Skriv prosedyren bytt selv (se forelesning nr. 16)

9 Tid og Dato •Eksempel –Finn hvor mange dager det er til Jul –Lag et program som teller ned •Ser på dette neste gang!


Laste ned ppt "Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell."

Liknende presentasjoner


Annonser fra Google