okia00 发表于 5 天前

如何获取TXT面板win对象

我们在服务端使用SAY命令创建的面板,如何在客户端获取它的win对象呢?


说明书有接口:GetWindow(parent, ID),
   方法:三 根据当前“桌面”打开的窗口控件ID获取对象    local _parent = GUI:GetWindow(nil,"QSQ_challengeboss")    local LV_type = GUI:GetWindow(nil,"QSQ_challengeboss/LV_type")


请教大佬,是否可以使用这种方法获取面板ID,如何使用?
或者是不是有别的方法获取win对象呢?

cao7281879 发表于 4 天前

同上,求解答!!!!

刀刀刀 发表于 4 天前

SL:RegisterLUAEvent('LUA_EVENT_NPCLAYER_OPENSTATUS', 'jiemian', function(status)
    if status then
      local layer = SL:GetMetaValue("CURRENT_TALK_NPC_LAYER")
      if layer then
                       
                        -- TOM.ssrUIManager.scale(layer, 1, 0)

                        -- GUI:runAction(layer, GUI:ActionMoveTo(0.2, 0, 0))
            -- GUI:Timeline_Window1(layer)
      end
    end
end
)
试下这个。

996技术-wang 发表于 3 天前

用LUA了还看TXT么。。。。

okia00 发表于 昨天 10:22

996技术-wang 发表于 2025-2-19 14:30
用LUA了还看TXT么。。。。

我们还是觉得用say()来写界面比较方便,而且好多版本还是用的Qfunction.txt

okia00 发表于 昨天 16:47

刀刀刀 发表于 2025-2-18 22:10
试下这个。
感谢大佬,这个确实能获取到win了,但是这个win咋不能注册事件呢:
SL:RegisterWndEvent(btn, "npc", 22, function()
      SL: Print("2")
    end)

WND_EVENT_WND_POS_CHANGE            = 22                                        -- 控件位置发生变化事件
还试了别的几个事件,都没反应

okia00 发表于 昨天 17:13

还有一个问题:
对这个窗口设置事件时出现报错
设置控件点击事件
GUI:addOnClickEvent(widget, func)
设置控件触摸事件
GUI:addOnTouchEvent(widget, func)

报错信息:
LUA ERROR: :1568: attempt to call method '_addClickEventListener' (a nil value)
页: [1]
查看完整版本: 如何获取TXT面板win对象