De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Gegevensstructuren: list boxen en lijsten Hoofdstuk 13.

Verwante presentaties


Presentatie over: "Gegevensstructuren: list boxen en lijsten Hoofdstuk 13."— Transcript van de presentatie:

1 Gegevensstructuren: list boxen en lijsten Hoofdstuk 13

2 Visual Basic.NET voor studenten2 In dit hoofdstuk … Nieuwe control: ListBox  Items toevoegen en verwijderen  Lengte  Selectie, zoeken Nieuwe datastructuur: (I)List  Objecten toevoegen en verwijderen  Lengte  Selectie, zoeken ListBox is grafisch, (I)List werkt achter de schermen

3 Hoofdstuk 13 Visual Basic.NET voor studenten3 Een ListBox Beschikbaar in de Toolbox Toont een lijst van string items Deze lijst kan tijdens het ontwerpen ingegeven worden (Properties)

4 Hoofdstuk 13 Visual Basic.NET voor studenten4 IList De datastructuur die achter de schermen de items van een ListBox beheert Kan ook onafhankelijk van een ListBox worden gebruikt Opmerking: dit is eigenlijk geen klasse, maar een interface  hoofdstuk 23 De werkelijke klasse die achter de schermen speelt is: ListBox.ObjectCollection

5 Hoofdstuk 13 Visual Basic.NET voor studenten5 IList In welke namespace vind je IList ? Waarom is er geen Imports statement nodig in de code van de Form? Dim myList As IList myList = Shopping.Items Dim numberOfItems As Integer numberOfItems = myList.Count ‘kortere schrijfwijze Dim numberOfItems As Integer = Shopping.Items.Count

6 Hoofdstuk 13 Visual Basic.NET voor studenten6 Items toevoegen Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Button1.Click Shopping.Items.Add(TextBox1.Text) End Sub Een toevoeging aan de IList veroorzaakt automatisch een update van de bijhorende ListBox

7 Hoofdstuk 13 Visual Basic.NET voor studenten7 De lengte van een ListBox Private Sub CountButton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles CountButton.Click MessageBox.Show(CStr(Shopping.Items.Count)) End Sub Je vraagt het aantal elementen op dat in de bijhorende IList zit

8 Hoofdstuk 13 Visual Basic.NET voor studenten8 Indices Private Sub Shopping_SelectedIndexChanged( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Shopping.SelectedIndexChanged TextBox1.Text = CStr(Shopping.SelectedIndex) End Sub Een item selecteren vuurt een event af: SelectedIndexChanged Indexen starten vanaf 0!

9 Hoofdstuk 13 Visual Basic.NET voor studenten9 Verwijderen en invoegen Bestudeer eveneens volgende methodes en maak kleine testprogrammaatjes om deze methodes uit te proberen Clear, Clone, Contains, IndexOf, LastIndexOf, Remove, RemoveAt, Reverse, Sort Shopping.Items.RemoveAt(3) Shopping.Items.Insert(5, “Tea”)

10 Hoofdstuk 13 Visual Basic.NET voor studenten10 Opzoektabel Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Button1.Click Dim monthNumber As Integer Dim monthName As String monthNumber = CInt(TextBox1.Text) monthName = CStr(Months.Items(monthNumber - 1)) TextBox2.Text = monthName End Sub

11 Hoofdstuk 13 Visual Basic.NET voor studenten11 Rekenen met een ListBox Bestudeer zelf de code

12 Hoofdstuk 13 Visual Basic.NET voor studenten12 For Each Dim sum As Integer Dim n As Integer sum = 0 For index As Integer = 0 To Numbers.Items.Count -1 n = CInt(Numbers.Items.Item(index)) sum = sum + n Next SumTextBox.Text = CStr(sum) Dit kan korter door een speciale For Each constructie

13 Hoofdstuk 13 Visual Basic.NET voor studenten13 For Each Dim sum As Integer sum = 0 For Each number As Integer In Numbers.Items sum = sum + number Next SumTextBox.Text = CStr(sum)

14 Hoofdstuk 13 Visual Basic.NET voor studenten14 For Each Erg kort Maar: je beschikt niet over de indexwaarde van de lijst  Niet zo flexibel! Alleen te gebruiken als je alle waarden van een lijst wil doorlopen

15 Hoofdstuk 13 Visual Basic.NET voor studenten15 Zoeken Bestudeer zelf de code

16 Hoofdstuk 13 Visual Basic.NET voor studenten16 Gebruik van een lijst - Genericiteit De List klasse kan ook op zichzelf gebruikt worden Algemene datastructuur Preciezer: List is een klasse die de IList interface implementeert Generisch: je kan aanduiden van welke klasse de objecten zijn die in de List zitten

17 Hoofdstuk 13 Visual Basic.NET voor studenten17 List : voorbeeld Private myList As List(Of String)... myList = New List(Of String) Private myList As New List(Of String) myList kan enkel String objecten bevatten. Dit zal door de compiler gecontroleerd worden.

18 Hoofdstuk 13 Visual Basic.NET voor studenten18 List : voorbeeld Imports System.Collections.Generic myList.Add("bread") myList.Add("milk") myList.Add("coffee") Benodigde namespace Toevoegen van items

19 Hoofdstuk 13 Visual Basic.NET voor studenten19 List : voorbeeld Dim index As Integer For index = 0 To myList.Count - 1 myListBox.Items.Add(myList(index)) Next For Each s As String In myList myListBox.Items.Add(s) Next Doorlopen van een lijst

20 Hoofdstuk 13 Visual Basic.NET voor studenten20 Opmerking In het vorige voorbeeld werden de strings gekopieerd van een List naar de lijst van een ListBox Dit is overbodig werk, want je kan gebruik maken van “Data Binding” Dit valt echter buiten het bestek van de cursus Meer info:

21 Hoofdstuk 13 Visual Basic.NET voor studenten21 Methodes en Properties van List Bestudeer dit zelf in de online Help

22 Hoofdstuk 13 Visual Basic.NET voor studenten22 Lijsten van objecten Bestudeer de code: welke klasse van objecten wordt in een List bewaard? Welk List methodes worden gebruikt?

23 Hoofdstuk 13 Visual Basic.NET voor studenten23 CheckedListBox Identiek aan een ListBox, maar elk item kan aangevinkt worden De aangevinkte items zijn te vinden via de property CheckedListBox.CheckedItems

24 Hoofdstuk 13 Visual Basic.NET voor studenten24 Oefening Tracht zelf volgend programma te schrijven: elk item dat je aan- of afvinkt wordt toegevoegd of verwijderd in de ListBox rechts.

25 Hoofdstuk 13 Visual Basic.NET voor studenten25 ComboBox Voeg een ComboBox toe op een form Welk event wordt er afgevuurd als een item wordt geselecteerd? Hoe kan je het geselecteerde item opvragen? Experimenteer met de property DropDownStyle

26 Hoofdstuk 13 Visual Basic.NET voor studenten26 Oefening Een ComboBox bevat verschillende kleuren. Een label wordt naargelang de gekozen kleur ingevuld


Download ppt "Gegevensstructuren: list boxen en lijsten Hoofdstuk 13."

Verwante presentaties


Ads door Google