---@class WB_SelectWeaponItems_C:UUserWidget ---@field Button_Item UNewButton ---@field VerticalBox_Weapons UVerticalBox ---@field WidgetSwitcher_IsSelect UWidgetSwitcher --Edit Below-- ---@type WB_SelectWeaponItems_C local WB_SelectWeaponItems = { bInitDoOnce = false; }; function WB_SelectWeaponItems:Construct() self:LuaInit(); end function WB_SelectWeaponItems:LuaInit() if self.bInitDoOnce then return ; end UITool.BindButtonClicked(self.Button_Item, self.OnClickItem, self); UITool.HideAllChildren(self.VerticalBox_Weapons); UITool.EnableButtonScroll(self.Button_Item); self:SetSelect(false); self.bInitDoOnc = true; end WB_SelectWeaponItems.Owner = nil; WB_SelectWeaponItems.Func = nil; function WB_SelectWeaponItems:Init(InOwner, InFunc) self.Owner = InOwner; self.Func = InFunc; self:LuaInit(); end WB_SelectWeaponItems.ItemId = {}; function WB_SelectWeaponItems:SetItemId(InItemId) -- 两个都隐藏 self.ItemId = InItemId; UITool.HideAllChildren(self.VerticalBox_Weapons); if type(InItemId) == 'table' then for i = 1, table.getCount(InItemId) do local Item = self.VerticalBox_Weapons:GetChildAt(i - 1); Item:SetItemId(InItemId[i]); Item:SetVisibility(ESlateVisibility.HitTestInvisible); end elseif type(InItemId) == 'number' then local Item = self.VerticalBox_Weapons:GetChildAt(0) Item:SetItemId(InItemId); Item:SetVisibility(ESlateVisibility.HitTestInvisible); end end function WB_SelectWeaponItems:OnClickItem() -- 直接发送过去 if self.Func and self.Owner then self.Func(self.Owner, self); end end function WB_SelectWeaponItems:GetItemId() return self.ItemId; end WB_SelectWeaponItems.IsSelect = false; function WB_SelectWeaponItems:SetSelect(IsSelect) self.IsSelect = IsSelect; self.WidgetSwitcher_IsSelect:SetActiveWidgetIndex(IsSelect and 1 or 0); end function WB_SelectWeaponItems:GetIsSelect() return self.IsSelect; end -- function WB_SelectWeaponItems:Tick(MyGeometry, InDeltaTime) -- end -- function WB_SelectWeaponItems:Destruct() -- end return WB_SelectWeaponItems;