SCRIPT: Titel schon in Playlisten??? optimiert auf andockbar

Post a reply


In an effort to prevent automatic submissions, we require that you complete the following challenge.
Smilies
:D :) :( :o :-? 8) :lol: :x :P :oops: :cry: :evil: :roll: :wink:

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: SCRIPT: Titel schon in Playlisten??? optimiert auf andockbar

Re: SCRIPT: Titel schon in Playlisten???

by Erwin Hanzl » Wed Sep 13, 2017 5:54 pm

Hallo Miron,
Deine Vorgangsweise ist auch OK.
Aber wie schon beschrieben, ich drucke nur auf EINEN Knopf
und bekomme noch zusätzlich die Positions# aus den Playlisten.

Probiere es doch aus.
lg erwin

Re: SCRIPT: Titel schon in Playlisten???

by M.Moeritz » Wed Sep 13, 2017 3:51 pm

Hallo, bevor ich dein Script ausprobiere eine Frage. Ich kann doch unter Dateieigenschaften/Klassifikation mir anzeigen lassen ob ein Titel in anderen Playlisten vorhanden ist, wo liegt der Vorteil in deinem Script?

Re: SCRIPT: Titel schon in Playlisten???

by Erwin Hanzl » Mon Aug 28, 2017 8:57 am

Ich habe mein Posting Deinen Entpfehlungen entsprechend, adaptiert.
Melde Dich bitte nach der Testphase.
Code bitte neu kopieren. Ich habe heute, am 30.8.2017 Optimierungen durchgeführt!!!!!
Danke

Re: SCRIPT: Titel schon in Playlisten???

by MMuser2011 » Mon Aug 28, 2017 8:38 am

Danke für das Script (habe es noch nicht ausprobiert).
Du solltest aber keine absoluten Pfade "C:\Users\1808\AppData\Roaming\MediaMonkey\Scripts" angeben, die passen ausschliesslich auf Deinem Windows-PC.
Verwende anstelle von "C:\Users\1808\AppData\Roaming" die allgemein gültige Bezeichung %appdata%. Die löst automatisch auf jedem Gerät an die richtige Stelle auf, egal wie der angemeldete User heisst.
Also konkret: %appdata%\MediaMonkey\Scripts

SCRIPT: Titel schon in Playlisten??? optimiert auf andockbar

by Erwin Hanzl » Mon Aug 28, 2017 7:53 am

Hallo Leute,
immer wieder die Frage: "Habe ich diesen Titel schon in einer/mehreren Playlisten und an welcher Stelle?"
Mittels diesem .vbs-Script bekommt Ihr, nach Implementierung mittels "Systemleisten konfigurieren",
auf Knopfdruck eine umgehende Antwort. (PlaylistenNamen und Positionsnummern)
Bitte um Feedback
lg Erwin

Fehlerfrei funktionierend unter:
Design: Glided, Metro M, Pulse, Vitreous (Schriftgröße 17 px)

Eintrag in Scripts.ini: (%appdata%\MediaMonkey\Scripts)

Code: Select all

  [X96_Finde_Titel_in_Playlisten]
  FileName=Auto\X96_Finde_Titel_in_Playlisten.vbs
  ProcName=X96_Finde_Titel_in_Playlisten
  Order=96
  DisplayName=96_Finde_Titel_in_Playlisten
  Description=96_Finde_Titel_in_Playlisten
  Language=VBScript
  ScriptType=0 
'SCRIPT-Datei unter dem Namen "X96_Finde_Titel_in_Playlisten.vbs" im Ordner "%appdata%\MediaMonkey\Scripts\Auto" speichern:

Code: Select all

Sub X96_Finde_Titel_in_Playlisten
  On Error resume next

  'AUTOR: Erwin Hanzl im Dezember 2017
  'Andockbares Fenster für Wiedergabelisten - muß nicht, kann aber geschlossen werden
  'optimalster Platz im Bereich "Spalten-Browser"

  'Sucht einen ausgewählten Musiktitel in ALLEN Playlisten(Wiedergabelisten)
  'Zeigt den Wiedergabelisten-Namen und die Position

  Dim list, itm, i, z, PlaylistTitel, PlaylistName,children, quelle, tracks, trck
  Dim Verzeichnis, VerzeichnisZahl, VerzeichnisKopfTitel, VerzeichnisKopfInterpret


  Set currentsonglist = SDB.SelectedSongList
  If currentsonglist.count<>1 Then exit sub
  Set itm = currentsonglist.Item(0)
  quelle=itm.title & "__" & itm.artistName
  VerzeichnisKopfTitel=itm.title
  VerzeichnisKopfInterpret=itm.artistname
  VerzeichnisKopfInterpret=replace(VerzeichnisKopfInterpret,"&","+")  '& ist reserviertes Zeichen in labels
  Set list = SDB.PlaylistByTitle("")
  Set children = list.ChildPlaylists 

  For i = 0 To children.count-1
    If children.count=0 Then exit Sub
    Set itm = children.Item(i)
    PlaylistName = itm.Title

    Set tracks = itm.Tracks
    if itm.tracks.count>0 then
      For z=0 To tracks.Count-1
        Set trck = tracks.Item(z)
        PlaylistTitel = trck.Title & "__" & trck.ArtistName
        if quelle=PlaylistTitel then 
	        Verzeichnis=Verzeichnis   & PlaylistName & chr(13)
           VerzeichnisZahl=VerzeichnisZahl & "Nr.: "  & z+1  & chr(13)
	     end if
      Next
    end if

  Next
  if len(Verzeichnis)<1 then Verzeichnis="in keiner Wiedergabeliste"

  Dim Mnu, Pnl, Lbl, Lbl2, Lbl3
  Set UI = SDB.UI
 
  Set Pnl = UI.NewDockablePersistentPanel("Wiedergabelisten")
  if Pnl.IsNew then
    Pnl.DockedTo = 3
    Pnl.Common.Width = 250
  end if
  Pnl.DockedTo = 3
  Pnl.Common.Width = 300
  Pnl.Caption = "Wiedergabelisten"
  Script.RegisterEvent Pnl,"OnClose", "PnlClose" 
 
  Set Lbl1 = UI.NewLabel(Pnl)
  Lbl1.Autosize = false
  Lbl1.Multiline = true
  Lbl1.Common.SetRect 10, 10, Pnl.Common.Width-20, Pnl.Common.Height-20
  Lbl1.Common.Anchors = 15
  Lbl1.Caption = VerzeichnisKopfTitel & chr(13)& VerzeichnisKopfInterpret & chr(13)  & "------------------------------------------" & chr(13)  

  Set Lbl2 = UI.NewLabel(Pnl)
  Lbl2.Autosize = false
  Lbl2.Multiline = true
  Lbl2.Common.SetRect 10, 10, Pnl.Common.Width-20, Pnl.Common.Height-20
  Lbl2.Common.Anchors = 15
  Lbl2.Common.Top = 70
  Lbl2.Common.Left = 10
  Lbl2.Caption = Verzeichnis

  Set Lbl3 = UI.NewLabel(Pnl)
  Lbl3.Autosize = false
  Lbl3.Multiline = true
  Lbl3.Common.SetRect 10, 10, Pnl.Common.Width-20, Pnl.Common.Height-20
  Lbl3.Common.Anchors = 15
  if len(VerzeichnisZahl) >1 then Lbl3.Caption = VerzeichnisZahl
  Lbl3.Common.Left = 180
  Lbl3.Common.Top = 70

  Pnl.Common.Visible = true

End Sub

Sub PnlClose(Pnl)
  SDB.Objects("Wiedergabelisten") = Nothing
End Sub

Top