Как часть World of Warcraft API, таблица UISpecialFrames
предоставляется как глобальная переменная, и любая строка в этой таблице будет выбираться как клавиша из таблицы глобальных переменных при нажатии клавиши escape; Если эта глобальная переменная является открытым фреймом WoW, он будет закрыт.
Это означает, что вам придется объявить ваш фрейм WoW как глобальную переменную и добавить имя переменной в таблицу UISpecialFrames
с помощью * 1005. *. Обратите внимание, что рамка WoW рамки Ace GUI хранится под ключом frame
. Соберите в коде:
local frame = AceGUI:Create("Frame")
frame:SetTitle("Flare")
frame:SetStatusText("Ready")
frame:SetCallback("OnClose", function(widget) AceGUI:Release(widget) end)
frame:SetLayout("List")
-- Add the frame as a global variable under the name `MyGlobalFrameName`
_G["MyGlobalFrameName"] = frame.frame
-- Register the global variable `MyGlobalFrameName` as a "special frame"
-- so that it is closed when the escape key is pressed.
tinsert(UISpecialFrames, "MyGlobalFrameName")