Ik heb dit script gemaakt zodat je met één klik toegang hebt tot meerdere stemmingen.
Het werkt alleen voor het nummer dat op dat moment wordt afgespeeld.
Je moet het opslaan in de Auto scripts sectie als een .vbs bestand, en media monkey opnieuw laden. Het zal een dockable paneel creëren. Als je het paneel sluit kun je het opnieuw openen door naar het View menu te gaan, naar beneden te gaan, en het is "Mood Setting Panel"

Wanneer u op een van de mood-selectievakjes klikt, wordt dat toegevoegd aan de mood voor het nummer als het er nog niet in staat. Het voegt ook de puntkomma's toe voor meerdere moods.

Door de onderstaande code te bewerken op de plekken die ik heb gemarkeerd, kunt u de positie en het aantal selectievakjes wijzigen, evenals de genres die u wilt instellen.

Het zou eenvoudig moeten zijn om de code aan te passen en een ander paneel te maken waarmee u hetzelfde kunt doen met Gelegenheden of andere tekstvelden.

Ik kan nauwelijks programmeren in VBScript of MediaMonkey, dus ik kan geen verzoeken op dit gebied uitvoeren. Iemand met meer tijd en zin kan dat voor je oppakken!
Genieten

Ik wil het ontwikkelteam van Mediamonkey bedanken voor het maken van zo'n geweldig product waarmee je zoveel zelf kunt doen en het vervolgens kunt uitbreiden met code. Het is makkelijker dan iTunes.


[code]



Dim Mnu, Pnl, Lbl, Lbl2

Ondertekenen OpStartup
Stel UI = SDB.UI in

Stel Pnl in = UI.NewDockablePersistentPanel("TestingPanel")
als Pnl.IsNew dan
Pnl.DockedTo = 2
Pnl.Gemeenschappelijke breedte = 250
einde als
Pnl.Caption = "Sfeerinstellingspaneel"
Script.RegisterEvent Pnl, "OnClose", "PnlClose"

Stel Lbl in = UI.NewLabel(Pnl)
Lbl.Autosize = false
Lbl.Multiline = waar
Lbl.Common.SetRect 10, 10, Pnl.Common.Breedte-20, Pnl.Common.Hoogte-20
Lbl.Gemeenschappelijk.Ankers = 15 '1+2+4+8

'verander niets boven deze lijn


' GEBRUIK DIT DEEL OM DE SELECTIEVAKJES GENRE EN POSITIE TE BEWERKEN
'Wijzig selectievakje bijschriften naar genres die u wilt
'Gebruik "SetRect" om de positie van elk selectievakje te wijzigen
'Kopieer en plak 6 regels checkbox-code om een nieuw checkbox toe te voegen
'Alle klikken op selectievakjes worden afgehandeld door de 1 gebeurtenis-handler onderaan
'die kijkt naar het bijschrift van het besturingselement dat het aanroept



Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 0, 100, 20
'links, boven, breedte, hoogte
ChB.Caption = "Episch"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 0, 100, 20
ChB.Caption = "Vastbesloten"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 20, 100, 20
ChB.Caption = "Verdrietig"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 20, 100, 20
ChB.Caption = "Gelukkig"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 40, 100, 20
ChB.Caption = "Ethereal"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 40, 100, 20
ChB.Caption = "Vreedzaam"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 60, 100, 20
ChB.Caption = "Gek"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 60, 100, 20
ChB.Caption = "Eng"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 80, 100, 20
ChB.Caption = "Boos"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 80, 100, 20
ChB.Caption = "Romantisch"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"

Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 100, 100, 20
ChB.Caption = "Avontuurlijk"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 100, 100, 20
ChB.Caption = "Populair"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel Chb = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 3, 120, 100, 20
ChB.Caption = "Cool"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"


Stel ChB = UI.NewCheckBox(Pnl) in
ChB.Common.ControlName = "ChB"
ChB.Common.SetRect 123, 120, 100, 20
ChB.Caption = "Plezier"
Script.RegisterEvent ChB.Common, "OnClick", "ChBClick"







''verander niets onder deze lijn


'Voeg menu-item toe dat het paneel weergeeft nadat het is gesloten
Stel Sep in = SDB.UI.AddMenuItemSep(SDB.UI.Menu_View,0,0)
Stel Mnu in = SDB.UI.AddMenuItem(SDB.UI.Menu_View,0,0)
Mnu.Caption = "Sfeerinstellingspaneel"
Mnu.Gecontroleerd = Pnl.Gemeenschappelijk.Zichtbaar
Script.RegisterEvent Mnu, "OnClick", "ShowPanel"

Script.RegisterEvent SDB, "OnChangedSelection", "OnSelection"
Einde sub

Sub-weergavepaneel (item)
Pnl.Common.Visible = niet Pnl.Common.Visible
Mnu.Gecontroleerd = Pnl.Gemeenschappelijk.Zichtbaar
Einde sub

Sub PnlSluiten( Item)
Mnu.Checked = onwaar
Einde sub

Sub op selectie

Einde sub


Onder ChBKlik( ChB)



Dim objSongList, objSongData
Stel objSongList = SDB.NewSongList in

Stel objSongData = SDB.Player.CurrentSong in
objSongList.Add(objSongData)

Dim StringMood, StringNieuweStemming, StringToevoegenStemming
StringMood = objSongData.Mood

StringAddMood = ";" & ChB.Caption


Als InStr(StringMood,ChB.Caption) = 0 Dan
'Old Mood bevat niet degene die u hebt gecontroleerd.
StringNieuweStem = StringStem & StringToevoegenStem

objSongData.Mood = StringNewMood
objSonglist.UpdateAll

Einde Als ' Als de Oude Stemming de Nieuwe Stemming bevat, wordt er geen actie ondernomen.
ChB.Gecontroleerd = onwaar

Einde sub





[/code]

Translated automatically (see original)

I made this script to give you one-click access to multiple moods.
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]

Hide original

By mutronbiphase
Ingezonden door mutronbiphase
Bijgewerkt 31/05/2012

Versiegeschiedenis / Details
(1 Stemmen)
4983 Downloaden

Versiegeschiedenis / Details

Versie:
1
Bijgewerkt:
31/05/2012
Size:
4.86 KB
Werkt met:
Media Monkey 4