Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdLaurens Vermeiren Laatst gewijzigd meer dan 10 jaar geleden
1
Gegevensstructuren: list boxen en lijsten
Hoofdstuk 13 Hoofdstuk 13
2
Visual Basic .NET voor studenten
In dit hoofdstuk … Nieuwe control: ListBox Items toevoegen en verwijderen Lengte Selectie, zoeken Nieuwe datastructuur: (I)List Objecten toevoegen en verwijderen ListBox is grafisch, (I)List werkt achter de schermen Visual Basic .NET voor studenten
3
Visual Basic .NET voor studenten
Een ListBox Beschikbaar in de Toolbox Toont een lijst van string items Deze lijst kan tijdens het ontwerpen ingegeven worden (Properties) Visual Basic .NET voor studenten
4
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
5
Visual Basic .NET voor studenten
IList Dim myList As IList myList = Shopping.Items Dim numberOfItems As Integer numberOfItems = myList.Count ‘kortere schrijfwijze Dim numberOfItems As Integer = Shopping.Items.Count In welke namespace vind je IList? Waarom is er geen Imports statement nodig in de code van de Form? Visual Basic .NET voor studenten
6
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
7
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 Visual Basic .NET voor studenten
8
Visual Basic .NET voor studenten
Indices Een item selecteren vuurt een event af: SelectedIndexChanged Indexen starten vanaf 0! Private Sub Shopping_SelectedIndexChanged( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Shopping.SelectedIndexChanged TextBox1.Text = CStr(Shopping.SelectedIndex) End Sub Visual Basic .NET voor studenten
9
Verwijderen en invoegen
Shopping.Items.RemoveAt(3) Shopping.Items.Insert(5, “Tea”) Bestudeer eveneens volgende methodes en maak kleine testprogrammaatjes om deze methodes uit te proberen Clear, Clone, Contains, IndexOf, LastIndexOf, Remove, RemoveAt, Reverse, Sort Visual Basic .NET voor studenten
10
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
11
Rekenen met een ListBox
Bestudeer zelf de code Visual Basic .NET voor studenten
12
Visual Basic .NET voor studenten
For Each Dit kan korter door een speciale For Each constructie 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) Visual Basic .NET voor studenten
13
Visual Basic .NET voor studenten
For Each Dim sum As Integer sum = 0 For Each number As Integer In Numbers.Items sum = sum + number Next SumTextBox.Text = CStr(sum) Visual Basic .NET voor studenten
14
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
15
Visual Basic .NET voor studenten
Zoeken Bestudeer zelf de code Visual Basic .NET voor studenten
16
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 Visual Basic .NET voor studenten
17
Visual Basic .NET voor studenten
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. Visual Basic .NET voor studenten
18
Visual Basic .NET voor studenten
List: voorbeeld Imports System.Collections.Generic Benodigde namespace myList.Add("bread") myList.Add("milk") myList.Add("coffee") Toevoegen van items Visual Basic .NET voor studenten
19
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
20
Visual Basic .NET voor studenten
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: Visual Basic .NET voor studenten
21
Methodes en Properties van List
Bestudeer dit zelf in de online Help Visual Basic .NET voor studenten
22
Visual Basic .NET voor studenten
Lijsten van objecten Bestudeer de code: welke klasse van objecten wordt in een List bewaard? Welk List methodes worden gebruikt? Visual Basic .NET voor studenten
23
Visual Basic .NET voor studenten
CheckedListBox Identiek aan een ListBox, maar elk item kan aangevinkt worden De aangevinkte items zijn te vinden via de property CheckedListBox.CheckedItems Visual Basic .NET voor studenten
24
Visual Basic .NET voor studenten
Oefening Tracht zelf volgend programma te schrijven: elk item dat je aan- of afvinkt wordt toegevoegd of verwijderd in de ListBox rechts. Visual Basic .NET voor studenten
25
Visual Basic .NET voor studenten
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 Visual Basic .NET voor studenten
26
Visual Basic .NET voor studenten
Oefening Een ComboBox bevat verschillende kleuren. Een label wordt naargelang de gekozen kleur ingevuld Visual Basic .NET voor studenten
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.