Hi
Arg natürlich Die Titel werden in einer Acess Tabelle gespeichert Auf ein Form habe ich mehrere Listboxen in List1 wird mir der Interpret angezeigt.Auf ein Klick auf den interpreten bekomme ich alle Alben angezeigt. wenn ich nun auf ein album Klicke möchte ich die Titel angezeit möchte ich das die Titel angezeigt werdenOption Explicit
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As _
Long) As Long
Private Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg _
As Long, ByVal wParam As Long, lParam As Any) _
As Long
Private Declare Function GetSystemMenu Lib "user32" _
(ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" _
(ByVal hMenu As Long, ByVal nPosition As Long, _
ByVal wFlags As Long) As Long
Private Const MF_BYCOMMAND = &H0&
Private Const SC_CLOSE = &HF060
Const LB_SETHORIZONTAL = &H194
Private Const LB_FINDSTRINGEXACT = &H1A2
Private RSMusik As Recordset
Private db As Database
Private Sub Form_Load()
Me.Move (Screen.Width - Me.Width) / 2, _
(Screen.Height - Me.Height) / 2
Dim hMen As Long
hMen = GetSystemMenu(Me.hwnd, False)
RemoveMenu hMen, SC_CLOSE, MF_BYCOMMAND
Me.AutoRedraw = True
PaintForm Me, 0, 115, 149, 203, 2, 1, -1
End Sub
Private Sub List1_Click()
Dim db As Database, rs As Recordset
Set db = DBEngine.OpenDatabase(App.Path & "\Musik.mdb ", True)
List2.Clear
If Option3.Value Then
Set rs = db.OpenRecordset("SELECT Distinct Interpret FROM Musik WHERE" & _
"Musikart = '" & List1.Text & "'", dbOpenDynaset)
Else
Set rs = db.OpenRecordset("SELECT Distinct Interpret FROM Musik WHERE" & _
"Interpret LIKE '" & List1 & "*' ORDER BY Interpret", dbOpenDynaset)
End If
If List1 <> "0-9" Then
Do While Not rs.EOF
List2.AddItem rs!Interpret
rs.MoveNext
Loop
Else
Set rs = db.OpenRecordset("SELECT Interpret FROM Musik ORDER BY Interpret", _
dbOpenDynaset)
List2.Clear
Do While Not rs.EOF
If IsNumeric(Left(rs!Interpret, 1)) Then List2.AddItem rs!Interpret
rs.MoveNext
Loop
End If
End Sub
Private Sub List2_Click()
Dim db As Database, rs As Recordset
Set db = DBEngine.OpenDatabase(App.Path & "\Musik.mdb", True)
Set db = OpenDatabase(App.Path & "\Musik.mdb")
Set rs = db.OpenRecordset("SELECT CDs FROM Musik WHERE Interpret = '" & _
List2.List(List2.ListIndex) & "'")
List6.Clear
List6.AddItem rs.Fields("CDs").Value
Set db = OpenDatabase(App.Path & "\Musik.mdb")
Set rs = db.OpenRecordset("SELECT Interpret FROM Musik WHERE Interpret= '" & _
List2.List(List2.ListIndex) & "'")
List7.Clear
List7.AddItem rs.Fields("Interpret").Value
Set db = DBEngine.OpenDatabase(App.Path & "\Musik.mdb ", True)
Set rs = db.OpenRecordset("SELECT DISTINCT Album FROM Musik ORDER BY Album", _
dbOpenDynaset)
Do While Not rs.EOF
List4.AddItem rs!Album
rs.MoveNext
Loop
End Sub
Private Sub List4_Click()
Dim db As Database, rs As Recordset
Set db = OpenDatabase(App.Path & "\Musik.mdb")
Set rs = db.OpenRecordset("SELECT Bildpfad FROM Musik WHERE Album = '" & _
List4.List(List4.ListIndex) & "'")
'App.Path & "\Cover\" & bildname.bmp
' App.Path & "\Cover\" & bildname.bmp =
Set Image1.Picture = LoadPicture(App.Path & rs.Fields(0))
Set db = OpenDatabase(App.Path & "\Musik.mdb")
Set rs = db.OpenRecordset("SELECT Titel FROM Musik WHERE Album = '" & _
List4.List(List4.ListIndex) & "'")
List3.Clear
List3.AddItem rs.Fields("Titel").Value
rs.MoveNext
End Sub
Private Sub Option1_Click()
Option1 = True
Option3 = False
List1.Clear
List2.Clear
List3.Clear
List4.Clear
List6.Clear
List7.Clear
Set Image1.Picture = Nothing
Dim a As Byte
List1.AddItem "0-9"
For a = 65 To 90
List1.AddItem Chr(a)
Next a
End Sub
Private Sub Option3_Click()
Option1 = False
Option3 = True
List1.Clear
List2.Clear
List3.Clear
List4.Clear
List6.Clear
List7.Clear
Set Image1.Picture = Nothing
Dim db As Database, rs As Recordset
Set db = DBEngine.OpenDatabase(App.Path & "\Musik.mdb ", True)
Set rs = db.OpenRecordset("SELECT DISTINCT Musikart FROM Musik ORDER BY" & _
"Musikart", dbOpenDynaset)
Do While Not rs.EOF
List1.AddItem rs!Musikart
rs.MoveNext
Loop
End SubIch hoffe mal das das etwas witer hilft
mit freuntlichen Grüßen Big Boy |