vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: 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
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Collections vb 2008584mawu500720.03.21 15:29
Re: Collections vb 2008292dj.tommy20.03.21 16:59
Re: Collections vb 2008284mawu500720.03.21 17:12
Re: Collections vb 2008330mawu500720.03.21 17:23
Re: Collections vb 2008279dj.tommy21.03.21 16:11
Re: Collections vb 2008290mawu500721.03.21 18:03
Re: Collections vb 2008279mawu500721.03.21 21:19
Re: Collections vb 2008273mawu500722.03.21 16:55
Vorschlag zur Verwendung der Framework-Angebote256Manfred X02.04.21 11:54
Re: Vorschlag zur Verwendung der Framework-Angebote260mawu500702.04.21 15:33

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 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