.jpg)
Vytvořil jsem tento skript, abych vám jedním kliknutím umožnil přístup k více náladám.
Funguje pouze pro aktuálně PŘEHRÁVAJÍCÍ skladbu.
Musíte jej uložit v sekci Automatické skripty jako soubor .vbs a znovu načíst mediální opici. Vytvoří dokovatelný panel. Pokud panel zavřete, můžete jej znovu otevřít tak, že přejdete do nabídky Zobrazit, přejděte dolů a je to „Panel nastavení nálady“
Když kliknete na jedno ze zaškrtávacích políček nálady, přidá se to k náladě skladby, pokud tam ještě není. Přidá také středníky pro více nálad.
Úpravou níže uvedeného kódu na místech, která jsem označil, můžete změnit polohu a počet zaškrtávacích políček a také žánry, které chcete nastavit.
Mělo by být dost snadné upravit kód tak, aby se vytvořil další panel, který vám umožní dělat to samé s příležitostmi nebo jakýmkoli jiným textovým polem.
Sotva se vyznám v programování VBScript nebo Mediamonkey, takže jakékoliv požadavky na to nezvládnu, někdo, kdo má více času a chuti, to za vás vyzdvihne!
Užijte si to
Rád bych poděkoval vývojářskému týmu Mediamonkey za vytvoření tak úžasného produktu, který vám umožňuje tolik dělat sám o sobě a poté jej rozšířit pomocí kódu. Beats Itunes snadno.
[kód]
Dim Mnu, Pnl, Lbl, Lbl2
Sub OnStartup
Nastavit UI = SDB.UI
Set Pnl = UI.NewDockablePersistentPanel("TestingPanel")
pokud Pnl.IsNew pak
Pnl.DockedTo = 2
Pnl.Common.Width = 250
konec pokud
Pnl.Caption = "Panel nastavení nálady"
Script.RegisterEvent Pnl, "OnClose", "PnlClose"
Nastavit Lbl = UI.NewLabel(Pnl)
Lbl.Autosize = false
Lbl.Multiline = true
Lbl.Common.SetRect 10, 10, Pnl.Common.Width-20, Pnl.Common.Height-20
Lbl.Common.Anchors = 15 '1+2+4+8
"Neměňte nic nad tímto řádkem."
' TUTO ČÁST POUŽÍVEJTE K ÚPRAVĚ ZAŠKRTOVACÍCH POLÍČEK ŽÁNR a pozice
'Změňte titulky zaškrtávacích políček na žánry, které chcete
'Pomocí "SetRect" změňte polohu každého zaškrtávacího políčka
'Zkopírujte a vložte 6 řádků kódu zaškrtávacího políčka a přidejte nové zaškrtávací políčko
'Všechna kliknutí na zaškrtávací políčka jsou zpracována obslužnou rutinou události 1 ve spodní části
'který se dívá na titulek ovládacího prvku, který jej volá
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 0, 100, 20
'vlevo, nahoře, šířka, výška
ChB.Caption = "Epic"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 0, 100, 20
ChB.Caption = "Určeno"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 20, 100, 20
ChB.Caption = "Smutný"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 20, 100, 20
ChB.Caption = "Šťastný"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 40, 100, 20
ChB.Caption = "Éterický"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 40, 100, 20
ChB.Caption = "Pokojný"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 60, 100, 20
ChB.Caption = "Pravý"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 60, 100, 20
ChB.Caption = "Scary"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 80, 100, 20
ChB.Caption = "Naštvaný"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 80, 100, 20
ChB.Caption = "Romantický"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 100, 100, 20
ChB.Caption = "Dobrodružný"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 100, 100, 20
ChB.Caption = "Populární"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit Chb = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 120, 100, 20
ChB.Caption = "Cool"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Nastavit ChB = UI.NewCheckBox(Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 120, 100, 20
ChB.Caption = "Zábava"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
''pod tímto řádkem nic neměňte
' Přidat položku nabídky, která zobrazí panel po jeho zavření
Nastavit září = SDB.UI.AddMenuItemSep(SDB.UI.Menu_View,0,0)
Set Mnu = SDB.UI.AddMenuItem(SDB.UI.Menu_View,0,0)
Mnu.Caption = "Panel nastavení nálady"
Mnu.Checked = Pnl.Common.Visible
Script.RegisterEvent Mnu, "OnClick", "ShowPanel"
Script.RegisterEvent SDB, "OnChangedSelection", "OnSelection"
End Sub
Sub ShowPanel (Item)
Pnl.Common.Visible = není Pnl.Common.Visible
Mnu.Checked = Pnl.Common.Visible
End Sub
Sub PnlClose (položka)
Mnu.Checked = false
End Sub
Sub OnSelection
End Sub
Sub ChBClick( ChB)
Dim objSongList , objSongData
Nastavit objSongList = SDB.NewSongList
Nastavte objSongData = SDB.Player.CurrentSong
objSongList.Add(objSongData)
Ztlumit StringMood, StringNewMood, StringAddMood
StringMood = objSongData.Mood
StringAddMood = ";" & ChB.Titulek
If InStr(StringMood,ChB.Caption) = 0 Pak
„Old Mood neobsahuje tu, kterou jste zaškrtli.
StringNewMood = StringMood & StringAddMood
objSongData.Mood = StringNewMood
objSonglist.UpdateAll
End If ' Pokud Old Mood obsahuje New Mood, neprovede se žádná akce.
ChB.Checked = false
End Sub
[/kód]
I made this script to give you one-click access to multiple moods.
Hide original
It only works for the currently PLAYING song.
You need to save it in the Auto scripts section as a .vbs file, and reload media monkey. It will create a dockable panel. If you close the panel you can reopen it by going to the View menu, go to the bottom, and it's "Mood Setting Panel"
When you click one of the mood checkboxes, it adds that to the mood for the song if it's not already on there. It also adds the semicolons for multiple moods.
By editing the below code in the places I marked out, you can change the position and number of the checkboxes as well as the genres you want them to set.
It should be easy enough to modify the code to make another panel that lets you do the same thing with Occasions or any other text field.
I hardly know VBScript or Mediamonkey programming so any requests on this I will not be able to do, someone with more time and inclination can pick that up for you!
Enjoy
I would like to thank Mediamonkey's dev team for making such an awesome product that allows you to do so much on its own, and then expand it using code. Beats Itunes easy.
[code]
Dim Mnu, Pnl, Lbl, Lbl2
Sub OnStartup
Set UI = SDB.UI
Set Pnl = UI.NewDockablePersistentPanel("TestingPanel")
if Pnl.IsNew then
Pnl.DockedTo = 2
Pnl.Common.Width = 250
end if
Pnl.Caption = "Mood Setting Panel"
Script.RegisterEvent Pnl, "OnClose", "PnlClose"
Set Lbl = UI.NewLabel(Pnl)
Lbl.Autosize = false
Lbl.Multiline = true
Lbl.Common.SetRect 10, 10, Pnl.Common.Width-20, Pnl.Common.Height-20
Lbl.Common.Anchors = 15 '1+2+4+8
'don't change anything above this line
' USE THIS PART TO EDIT CHECK BOXES GENRE and position
'Change Checkbox Captions to Genres you want
'Use "SetRect" to change position of each checkbox
'Copy paste 6 lines of checkbox code to add a new checkbox
'All clicks to checkboxes are handled by the 1 event handler at the bottom
'which looks at the caption of the control that calls it
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 0, 100, 20
'left, top, width, height
ChB.Caption = "Epic"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 0, 100, 20
ChB.Caption = "Determined"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 20, 100, 20
ChB.Caption = "Sad"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 20, 100, 20
ChB.Caption = "Happy"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 40, 100, 20
ChB.Caption = "Ethereal"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 40, 100, 20
ChB.Caption = "Peaceful"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 60, 100, 20
ChB.Caption = "Goofy"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 60, 100, 20
ChB.Caption = "Scary"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 80, 100, 20
ChB.Caption = "Angry"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 80, 100, 20
ChB.Caption = "Romantic"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 100, 100, 20
ChB.Caption = "Adventurous"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 100, 100, 20
ChB.Caption = "Popular"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set Chb = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 120, 100, 20
ChB.Caption = "Cool"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
Set ChB = UI.NewCheckBox( Pnl)
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 120, 100, 20
ChB.Caption = "Fun"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"
''don't change anything below this line
' Add menu item that shows panel after it is closed
Set Sep = SDB.UI.AddMenuItemSep(SDB.UI.Menu_View,0,0)
Set Mnu = SDB.UI.AddMenuItem(SDB.UI.Menu_View,0,0)
Mnu.Caption = "Mood Setting Panel"
Mnu.Checked = Pnl.Common.Visible
Script.RegisterEvent Mnu, "OnClick", "ShowPanel"
Script.RegisterEvent SDB, "OnChangedSelection", "OnSelection"
End Sub
Sub ShowPanel(Item)
Pnl.Common.Visible = not Pnl.Common.Visible
Mnu.Checked = Pnl.Common.Visible
End Sub
Sub PnlClose( Item)
Mnu.Checked = false
End Sub
Sub OnSelection
End Sub
Sub ChBClick( ChB)
Dim objSongList , objSongData
Set objSongList = SDB.NewSongList
Set objSongData = SDB.Player.CurrentSong
objSongList.Add(objSongData)
Dim StringMood, StringNewMood, StringAddMood
StringMood = objSongData.Mood
StringAddMood = ";" & ChB.Caption
If InStr(StringMood,ChB.Caption) = 0 Then
'Old Mood does not contain the one you checked.
StringNewMood = StringMood & StringAddMood
objSongData.Mood = StringNewMood
objSonglist.UpdateAll
End If ' If Old Mood contains New Mood, no action is taken.
ChB.Checked = false
End Sub
[/code]
By
mutronbiphase
Autor mutronbiphase
Aktualizováno 31/05/2012
Historie verzí / podrobnosti
- Verze:
- 1
- Aktualizováno:
- 31/05/2012
- Size:
- 4.86 KB
- Pracuje s:
- Media Monkey 4