ich habe ein Kontextmenü (Rechtsklickmenü) in meinem MP3-Player, nun möchte ich eine Art-Playlist im Kontextmenü haben unter dem Untermenüpunkt Playlist, das Problem ist, das ich meine Playlist Untermenü nur am ende des Menüs platzieren kann, da ich es ja sonst Schließen müsste, dadurch kann ich ja nix mehr im "Repeat" teil hinzufügen! Nun, könnte mir jemand dabei helfen, damit ich das Playlist untermenü in der Mitte des Menüs auch aktualiesiert bekomme? D.h. Hinzufügen & Löschen!
Hier schnippsel vom Kontextmenü:
Code: Alles auswählen
Procedure.s MouseOverM(PopupMenu.l,X.l,Y.l)
Gefunden.l=1
ThisMenu.l=0
Ergebnis.s=""
FoundThisRound.l=0
Repeat
ret=GetMenuItemRect_(0,PopupMenu,ThisMenu,R._RECT)
If ret=0
Gefunden=0
Else
If X>=R\Left And X<=R\Right
If Y>=R\Top And Y<=R\Bottom And FoundThisRound=0
Ergebnis.s+Str(ThisMenu+1)+","
FoundThisRound=1
EndIf
EndIf
If GetSubMenu_(PopupMenu,ThisMenu)<>0 And FoundThisRound=0
Res.s=MouseOverM(GetSubMenu_(PopupMenu,ThisMenu),X,Y)
If Res<>""
Ergebnis+Str(ThisMenu+1)+","+Res
EndIf
EndIf
ThisMenu+1
EndIf
Until Gefunden=0
ProcedureReturn Ergebnis
EndProcedure
Procedure.s GetMouseOverMenu(PopupMenu.l)
GetCursorPos_(Position._POINTAPI)
Res.s=MouseOverM(PopupMenu,Position\X,Position\Y)
If Res<>""
ProcedureReturn Left(Res,Len(Res)-1)
Else
ProcedureReturn ""
EndIf
EndProcedure
Procedure.l ShowPopupInfo(PopupMenu.l)
Repeat
MouseOverMenu.s=GetMouseOverMenu(PopupMenu)
Select MouseOverMenu
Case "1"
EndSelect
Delay(1)
ForEver
EndProcedure
MeinPopupFenster.l = CreatePopupMenu(0)
If MeinPopupFenster
MenuItem( 4, "Abspielen")
MenuItem( 3, "Pause")
MenuItem( 6, "Stop")
MenuBar()
MenuItem( 8, "Nächster")
MenuItem( 9, "Vorheriger")
MenuBar()
MenuItem( 7, "Anstellen")
MenuBar()
OpenSubMenu("Transparenz")
MenuItem( 1010, "10 %")
MenuItem( 1020, "20 %")
MenuItem( 1030, "30 %")
MenuItem( 1040, "40 %")
MenuItem( 1050, "50 %")
MenuItem( 1060, "60 %")
MenuItem( 1070, "70 %")
MenuItem( 1080, "80 %")
MenuItem( 1090, "90 %")
MenuItem( 1100, "100 %")
CloseSubMenu()
OpenSubMenu("Lautstärke")
MenuItem( 2010, "10 %")
MenuItem( 2020, "20 %")
MenuItem( 2030, "30 %")
MenuItem( 2040, "40 %")
MenuItem( 2050, "50 %")
MenuItem( 2060, "60 %")
MenuItem( 2070, "70 %")
MenuItem( 2080, "80 %")
MenuItem( 2090, "90 %")
MenuItem( 2100, "100 %")
CloseSubMenu()
;OpenSubMenu("Skins")
;MenuItem( 3001, "Blue")
;MenuItem( 3002, "Red")
;MenuItem( 3003, "Green")
;MenuItem( 3004, "Orange")
;CloseSubMenu()
OpenSubMenu("Wiederholen")
MenuItem( 4001, "Liste")
MenuItem( 4002, "Datei")
MenuItem( 4003, "Aus")
CloseSubMenu()
MenuBar()
MenuItem( 2, "Info")
MenuItem( 1, "Beenden")
OpenSubMenu("Playlist")
SetMenuItemState(0,5,0)
EndIf
Reapeat
; Vereinfachter Mainloop
MenuItem( 10, "test")
Until Quit = 1
CloseSubMenu()
EndHoffe ihr habt eine Idee!
THX Lukaso