Что я хочу сделать, это вставить элементы (метки) из таблицы в контейнер с полосой прокрутки, используя WowAce-Gui3.0.Поскольку я не знаю, сколько ярлыков будет в таблице, я не могу их статически назвать.
Я пытался применить цикл for, генерировать ярлыки и вставлять их в новыйтаблица за индексом, вызывая индекс таблицы, чтобы добавить его в пользовательский интерфейс.
Это, похоже, не работает, и кажется ОЧЕНЬ грязным.
-- function that draws the widgets for the second tab
local function DrawGroup2(container)
local f = AceGUI:Create("SimpleGroup")
container:AddChild(f)
f:SetLayout("Fill") --Fill will make the first child fill the whole content area
local scrollWindow = AceGUI:Create("ScrollFrame")
f:AddChild(scrollWindow)
scrollWindow:SetLayout("Flow")
local labels = {}
for i=1,table.getn(list) do
local name = list[i].fullName;
local level = list[i].level
local class = list[i].classStr
local area = list[i].area
local playerString = name .. " " .. level .. " " .. class .. " " .. area
tempLabel = AceGUI:Create("Label")
tempLabel:SetText(playerString)
tempLabel:SetFullWidth(true)
labels[i]=theLabel
end
scrollWindow.AddChild(labels[1])
end
Я ожидаю, что это добавит их в качестве ребенка в мой пользовательский интерфейс, но ошибка с жалобой на значение nilи появляется self.
"Сообщение: ... erface \ AddOns \ Recount \ Libs \ AceGUI-3.0 \ AceGUI-3.0.lua, строка 434: попытка индексировать локальное 'self' (нулевое значение)"
Я даже не касаюсь Пересчета, но я думаю, что делюсь экземпляром библиотеки.