HugoOlivera Posted December 1, 2014 Share Posted December 1, 2014 Доброго времени суток Вам. Собственно вопрос вот в чем состоит. Имеется шаблон кнопки созданный следующим образом. local AOContextActionbar = stateMainForm:GetChildChecked( "ContextActionbar", false ) local AOActionBar = AOContextActionbar:GetChildChecked( "ActionBar", false ) local AOAction = AOActionBar:GetChildChecked( "Action01", false ):GetWidgetDesc() Сам виджет строится примерно так: function CreateTest() local w = mainForm:CreateWidgetByDesc( AOAction ) w:SetName("Test") local i = w:GetPlacementPlain() i.alignX = WIDGET_ALIGN_LOW i.alignY = WIDGET_ALIGN_LOW i.posX = 15 i.posY = 15 i.sizeX = 50 i.sizeY = 50 w:SetPlacementPlain(i) TestPanel:AddChild(w) w:GetChildChecked('Button',true):Show(true) w:GetChildChecked('Autocast',true):Show(false) w:GetChildChecked('Blink',true):Show(false) w:GetChildChecked('Frame',true):Show(false) w:GetChildChecked('Cooldown',true):Show(false) w:GetChildChecked('Cooldown',true):Show(true) w:GetChildChecked('Gauge',true):Show(false) w:GetChildChecked('Gauge',true):Show(true) w:GetChildChecked('Icon',true):Show(true) w:GetChildChecked('Locked',true):Show(false) w:GetChildChecked('Prepared',true):Show(false) w:GetChildChecked('Effect',true):Show(false) w:GetChildChecked('Count',true):Show(true) w:GetChildChecked('Countdown',true):Show(false) w:GetChildChecked('Link',true):Show(false) w:GetChildChecked('Pressed',true):Show(false) w:GetChildChecked('TopLeftIcon',true):Show(false) w:GetChildChecked('Shortcut',true):Show(false) w:Show(true) end т.е. создан виджет похожий на "Action01" вопрос в том как заставить его реагировать на нажатие по нему мышкой, чтобы он скажем использовал итем или скилл. Если можно буквально пару строк напишите каким образом заставить сие чудо работать. Lua API уже и так все вычитал не пойму. От части догадки есть, что необходимо через 2ую ссылку но как не пойму. Буду очень благодарен за помощь. LuaApi/FunctionCommonRegisterReactionHandler.html LuaApi/FunctionCommonOnReaction.html P.S. версия клиента 4.0.02.42 Quote Link to comment Share on other sites More sharing options...
logg Posted December 2, 2014 Share Posted December 2, 2014 Создай кнопку в аддоневозьми к примеру data\Mods\SampleAddons\SampleReactionHandlerв Execute.(WidgetButton).xdb пропиши имя типа<Name>Button</Name> Запиши виджет кнопки с этим именемwtButton = wtMainPanel:GetChildChecked( "Button", false ) И добавь к ней скопированную кнопку wtButton:AddChild(w) я бы так начал лепить... Quote Link to comment Share on other sites More sharing options...
ramirez Posted December 2, 2014 Share Posted December 2, 2014 Все проще. В этом экшн-слоте есть виджет. Зовется Button. На клики посылает реакции slot_pressed и slot_pressed_rmb. Создать виджет слота из шаблона, подписаться на реакции его кнопки. 1 Quote Link to comment Share on other sites More sharing options...
HugoOlivera Posted December 2, 2014 Author Share Posted December 2, 2014 Все проще. В этом экшн-слоте есть виджет. Зовется Button. На клики посылает реакции slot_pressed и slot_pressed_rmb. Создать виджет слота из шаблона, подписаться на реакции его кнопки. Спасибо от души как говорится, о том что есть такое догадывался, но вот без точного имени можно гадать как на кофейной гуще. Кстати не подскажешь от куда такая информация? Quote Link to comment Share on other sites More sharing options...
logg Posted December 2, 2014 Share Posted December 2, 2014 Из исходников старого клиента-сервера. Quote Link to comment Share on other sites More sharing options...
LEM Posted December 2, 2014 Share Posted December 2, 2014 А здесь можно все посмотреть. https://yadi.sk/d/9BbTDmSZbzr38 Quote Link to comment Share on other sites More sharing options...
HugoOlivera Posted December 2, 2014 Author Share Posted December 2, 2014 Из исходников старого клиента-сервера. Если не трудно можете поделиться помню на рег зоне был но что то не нашел такой сейчас Quote Link to comment Share on other sites More sharing options...
HugoOlivera Posted December 2, 2014 Author Share Posted December 2, 2014 (edited) А здесь можно все посмотреть. https://yadi.sk/d/9BbTDmSZbzr38 Спасибо огромное, я подобное давно искал. Спасибо огромнейшее еще раз. Edited December 2, 2014 by HugoOlivera Quote Link to comment Share on other sites More sharing options...
Recommended Posts