| |

VB.NET - Ein- und UmsteigerRe: Collections vb 2008 | |  | Autor: mawu5007 | Datum: 22.03.21 16:55 |
| Ich bedanke mich nochmals bei dj.tommy für seine Arbeit.
Ich entwickelte jetzt ein funktionsfähiges Pgm nach Vorbild von
https://www.youtube.com/watch?v=1p4iHGWt-XM
also Collections mit ArrayList + Sort und stelle es hier aus:
--------------------------------------------------------------------------------
Public Class Personen
Implements IComparable
Public Name As String
Public Vorname As String
Public GebDat As Date
Public ZSchalter As String
Public Sub New(ByVal _name As String, ByVal _vorname As String, ByVal _gebdat As Date, ByVal _schalter As String)
Me.Name = _name
Me.Vorname = _vorname
Me.GebDat = _gebdat
Me.ZSchalter = _schalter
End Sub
Public Function CompareTo(ByVal obj As Object) As Integer Implements System.IComparable.CompareTo
' Sortieren (nach "Name/ etc") vorbereiten
If ZSchalter = "N" Then
Return Me.Name.CompareTo(DirectCast(obj, Personen).Name)
End If
If ZSchalter = "V" Then
Return Me.Vorname.CompareTo(DirectCast(obj, Personen).Vorname)
End If
End Function
End Class
--------------------------------------------------------------------
Public Class Form1
Public ZSchalter As String
Private Sub ArrayList_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Person As New Collections.ArrayList()
'Sortieren nach "name/ vorname etc"
ZSchalter = "V"
Person.Add(New Personen("Müller", "Hans", Date.Now, ZSchalter))
Person.Add(New Personen("Schulze", "Gert", Date.Now, ZSchalter))
Person.Add(New Personen("Adam", "", Date.Now, ZSchalter))
Person.Add(New Personen("Hallo", "", Date.Now, ZSchalter))
If ZSchalter = "N" Then
Dim name_sort As IComparer = New SortPersonName
End If
If ZSchalter = "V" Then
Dim vorname_sort As IComparer = New SortPersonVorName
End If
Person.Sort()
End
End Sub
Class SortPersonName
Implements IComparer
Public Function compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare
Dim person1 As Personen = DirectCast(x, Personen)
Dim person2 As Personen = DirectCast(y, Personen)
Return person1.Name.CompareTo(person2.Name)
End Function
End Class
Class SortPersonVorName
Implements IComparer
Public Function compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare
Dim person1 As Personen = DirectCast(x, Personen)
Dim person2 As Personen = DirectCast(y, Personen)
Return person1.Vorname.CompareTo(person2.Vorname)
End Function
End Class
End Class
----------------------------------------------------------------------
mfg |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|