ATL ActiveX控件一般在方法(包括属性)和事件反馈中使用枚举常量。
可以在控件的IDL文件中编写代码,见彩色部分代码。
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(A0A2E087-0A96-4861-BED2-549F9A0AC2C2),
dual,
nonextensible,
helpstring("IHLMessage Interface"),
pointer_default(unique)
]
interface IHLMessage : IDispatch{
//在方法中使用枚举
[id(1), helpstring("method A")] HRESULT A([in] enum HL_MSG_STYLE style);
[id(2), helpstring("method B")] HRESULT B([in] LONG i);
};
[
uuid(5181C89F-A37F-4632-8241-92F152A8D426),
version(1.0),
helpstring("ActiveX for HuaLong Message Component 1.0")
]
library HuaLongALib
{
importlib("stdole2.tlb");