Listbox markierung ausführen

Textbox? Ich denke, Du meinst eine Listbox, oder?

Dann setz Dir mal einen Haltepunkt in die Commandbox, und lass Dir anzeigen, welchen List1.ListIndex und List1.Text hat.
 
Hallo


danke für deine Gedult.......

Ja ich meinte Listbox.

weiß jetzt nicht genau was ich da machen soll.

also wenn ich auf Deklaration gehe, kommt folgende Meldung:

Cannot jump to 'List1' because it is hidden.

Und wenn ich auf die Listbox drücke, in der die Mp3's aufgelistet werden scheint

Private Sub List1_Click().

hoffe du kannst damit was anfangen.
 
Folgendes:

Wenn Du in der Zeile "If List1.ListIndex >= 0 Then" links auf den grauen Bereich direkt neben dieser Zeile links klickst, dann sollte die Zeile farbig (in der Regel rot) hinterlegt sein, in dem grauen Bereich erscheint dann ebenso farbgier Punkt. Dies bedeutet, dass das Programm anhält, sobald diese Zeile erreicht ist. Das gleiche erreichst Du, wenn Du die Zeile anklickst, und dann im Menü "Debuggen" in Deinem VB6 "Haltepunkt ein/aus" wählst. Oder Du klickst die Zeile an, und drückst dann F9.

Dann startest Du das Programm (mit F5), klickst auf einen Deiner Titel in der Listbox, und betätigst dann Deine Taste Command3. Damit wird das Click-Ereignis dieser Taste ausgelöst.

Wenn das Programm dann dort im Command3_Click an dem zuvor gesetzten Haltepunkt stehen geblieben ist, kannst Du mit der Maus über "List1.ListIndex" gehen (ohne zu klicken), dann wird Dir in einem Tooltip der Wert angezeigt, den diese Variable hat.

Sie sollte einen Wert >= 0 haben, wenn Du zuvor in der List1 was gewählt hast. Hast Du noch nichts gewählt, ist der Listindex -1.

Mit F8 wird der nächste Befehl ausgeführt, dann sollte der Aufruf erfolgen.

Ronald
 
Hallo, genau wie beschreiben.

ohne Markierung ist List1.ListIndex -1

mit Markierung ist List1.ListIndex 0
bzw. je nach dem welche Datei ich in der Liste markiere.
wenn ich dann F8 drücke, sprinngt er zu
ShellExecute Me.hwnd, "open", List1.Text, vbNullString, "C:\", SW_SHOWNORMAL (mit markierung)
und ohne markierung spring er dann auchtomatisch zu end if.

Starte ich das Programm und wähle dann eine Datei aus und drücke auf den Command3 Button ergibt sich keine Reaktion.
 
Und das ShellExecute tut dann nichts? Dann müssen wir mal rauskriegen, warum nicht.

Schreib die Funktion mal so um:

Code:
Private Sub Command3_Click()
Dim Rx as Long
If List1.ListIndex >= 0 Then
      Msgbox List1.Text
      Rx = ShellExecute (Me.hWnd, "open", List1.Text, vbNullString, "C:\", SW_SHOWNORMAL)
      Msgbox "Returncode: "+Str$(Rx)
   End If
   
End Sub

Damit wird Dir vor dem Aufruf der genaue Dateiname angezeigt. Der sollte mit Pfad und Extension komplett auf die richtige Datei verweisen.

Der Returncode Rx zeigt einen Fehler, wenn er <=32 ist. Ist er größer, ist dies der Handle zu der Applikation, die dann aufgerufen wird.

Ich habe auf meinem Rechner keinen WinAmp installiert, bei mir sind MP3's mit dem Windows Media Player assoziiert. Vielleicht gibt es da ja auch ein Problem. Verknüpf doch mal testweise im Dateisystem MP3 mit dem Media Player, und sieh, ob es damit funktioniert.

Grüsse
Ronald
 
Der Fehlercode bedeutet:

There is no application associated with the given filename extension.

Also musst Du wohl mal Deine Windows-Einstellungen prüfen. Wird denn auch die Endung ".mp3" mit im Dateinamen angezeigt?
 
ja,

der komplette Pfad, Dateiname und auch die Dateieindung .mp3


wenn ich aber über den Explorer auf die Datei doppelt drücke, kommt kommt automatisch der Player und die Datei wird abgespielt.

Wenn ich auf die Listbox drücke wo die Dateien angezeit werden, erscheint:

Private Sub List1_Click()

muß da evtl List1_doubleClick() stehen? wie oben schon mal beschrieben?

oder gehört das nur für die Direktanwahl, also ohne Command3 Button?
 
ja,

der komplette Pfad, Dateiname und auch die Dateiendung .mp3


wenn ich aber über den Explorer auf die Datei doppelt drücke, kommt kommt automatisch der Player und die Datei wird abgespielt.

Wenn ich auf die Listbox drücke wo die Dateien angezeit werden, erscheint:

Private Sub List1_Click()

muß da evtl List1_doubleClick() stehen? wie oben schon mal beschrieben?

oder gehört das nur für die Direktanwahl, also ohne Command3 Button?
 
Hallo nochmal


wenn ich mit meinem Programm nach *.jpg anstatt nach *.mp3 suche funktoniert dies dann einwandfrei und mit einem Klick auf en Command3 wird das Bild auch geöffnet.

Wies auschaut stimmt wirklich was mit meinen Einstellungen nicht.

ich versuch das Später mal auf einen andren Rechner.

wäre es möglich den Code für den Command3 Butten so zu schreiben,

das er die Dateien mit der Winamp.exe startet, und wir somit dieses Problem umgehen könnten ?
 

Neue Beiträge

Zurück