• Страница 1 из 1
  • 1
Форум » Обсуждение аддонов » Разработка аддонов WoW » Работа с фреймами
Работа с фреймами
Nyll
Здравствуйте. Сегодня мы поговорим о фреймах и том, как с ними работать.

Инструкция по созданию toc файла - тык
Ссылка на предыдущие статью - тык
Скачать notepad++ - тык
API функции - тык

Структура создания фрейма.

Code
frame = CreateFrame("frameType" [, "name" [, parent [, "template"]]])

frame - Название фрейма (можно использовать как глобальное, так и локальное "local frame").
frameType - Тип фрейма.

[cut]
[/cut]

name - Имя фрейма.
parent - Название другого фрейма (используется для того, чтобы добавить добавочный фрейм к основному. Если нет основного фрейма, указываем "UIParent").
template - Название шаблона.

Пример использования "parent".

Задаем расположение кнопке "UIParent".

Code
mybutton = CreateFrame("Button","mybutton",UIParent,"UIPanelButtonTemplate")
mybutton:SetPoint("CENTER",0,0)
mybutton:SetWidth(80)
mybutton:SetHeight(22)
mybutton:SetText("Кнопка")


В данном случае наша кнопка будет располагаться по середине экрана.



UIParent - это глобальный фрейм, к которому мы привязали нашу кнопку.

Добавляем кнопку в окошко с настройками видео в игре.

Code
mybutton = CreateFrame("Button","mybutton",VideoOptionsFrame,"UIPanelButtonTemplate")
mybutton:SetPoint("CENTER",-100,-233)
mybutton:SetWidth(80)
mybutton:SetHeight(22)
mybutton:SetText("Кнопка")


В данном примере мы указали то, что наша кнопка должна располагаться в фрейме "VideoOptionsFrame", т.е в окошке настроек видео.



Создаем собственный фрейм и привязываем к нему кнопку.

Делаем фрейм и называем его "myframes"

Code
myframes = CreateFrame("FRAME","my_Frame",UIParent);


Задаем высоту и толщину фрейма.

Code
myframes:SetWidth(260);               
myframes:SetHeight(150);


Задаем текстуру.

Code
myframes:SetBackdrop({bgFile = "Interface\\DialogFrame\\UI-DialogBox-Gold-Background",  edgeFile = "Interface\\DialogFrame\\UI-DialogBox-Gold-Border",});


Указываем расположение фрейма.

Code
myframes:SetPoint("CENTER");


Привязываем нашу кнопку к фрейму.

Code
mybutton = CreateFrame("Button","mybutton",myframes,"UIPanelButtonTemplate")
mybutton:SetPoint("CENTER",0,0)
mybutton:SetWidth(80)
mybutton:SetHeight(22)
mybutton:SetText("Кнопка")


Хочу заметить, что "SetPoint" настраивается по привязанному к нему фрейму.
Т.е., если в "SetPoint" вы указали “CENTER” и координаты “0,0”, то наша кнопка будет располагаться по середине фрейма.



На этом, думаю, все. Удачи!


За помощь в написании статьи спасибо модератору Pr.
Прикрепления: 4280646.jpg (274.1 Kb) · 5941712.jpg (291.9 Kb) · 8483478.jpg (311.2 Kb)
Маме беркута привет!
Сообщение # 1 отредактировано WJP - Суббота, 21.04.2012, 21:29
data777
Отлично, спасибо!
Сообщение # 2 написано 21.04.2012 в 12:22
PrOBrO
Скаут
спасибо!
______
I don't know but i know
______
Сообщение # 3 написано 14.07.2012 в 18:58
Insurgente
Скаут
Спасибо отлично smile

Добавлено (03.08.2012, 23:21)
---------------------------------------------
А ещё вопрос: как сделать что бы его можно было передвигать?

Добавлено (03.08.2012, 23:23)
---------------------------------------------
И как сделать в ней определенный текст/команду?

Сообщение # 4 написано 03.08.2012 в 23:23
Forumwowjpp
Скаут
Insurgente,
Гугл в помощь. Хоть сам сделай что-то.
Сообщение # 5 написано 04.08.2012 в 01:12
Форум » Обсуждение аддонов » Разработка аддонов WoW » Работа с фреймами
  • Страница 1 из 1
  • 1
Поиск: