Gestione degli Enum
Gestione degli Enum
In VbLuaNet, lavorando con oggetti COM, è possibile che metodi o proprietà che ritornano enum .NET restituiscano numeri interi. Questo comportamento è normale poiché il LUA non è tipizzato. E' possibile ottenere il tipo nativo con un paio di chiamate.
Esempio 201. Esempio di gestione degli enum
local asm1, err = loadassembly2("mscorlib")
local Enum = asm1:importType("System.Enum")
local asminv, err = loadassembly2("Autodesk.Inventor.Interop")
local ObjectTypeEnum = asminv:importType("Inventor.ObjectTypeEnum")
...
-- get a SurfaceBody type
local tp = body.Type
local x = Enum:ToObject(ObjectTypeEnum, tp)
alert(x) -- <<--- this is OK