; 此方法的问题在于,目前单实例没有问题。多实例的话,会造成this.base一致后,都共用的问题
; https://www.autohotkey.com/boards/viewtopic.php?p=235969#p235969
a := New MenuX("item 1", "notepad.exe")
a.Show()
a := "" ; 此行触发 __Delete()
class MenuX {
__New(MenuItemName, Command) {
fn := ObjBindMethod(this.base, "_RunMenu", Command)
Menu, % &this, Add, %MenuItemName%, %fn%
}
__Delete() {
MsgBox delete!
Menu, % &this, Delete
}
Show() {
Menu, % &this, Show
}
_RunMenu(Command, ItemName, ItemPos, MenuName) {
MsgBox, % Command
}
}
声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。

评论(0)