VB做ActiveX DLL无法编译Enum

bgj1094342369 2018-02-07 11:26:50
'信息类型枚举
Public Enum eumInfoType
hdmodelsn = 0
hdOnlyModel = 1
hdOnlySN = 2
End Enum

'磁盘通道枚举
Public Enum eumDiskNo
hdPrimaryMaster = 0
hdPrimarySlave = 1
hdSecondaryMaster = 2
hdSecondarySlave = 3
End Enum

...全文
693 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
he036002 2018-02-11
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
Enum 语句 定义枚举类型。 语法 [Public | Private] Enum name membername [= constantexpression] membername [= constantexpression] . . . End Enum Enum 语句包含下面部分: 部分 描述 Public 可选的。表示该 Enum 类型在整个工程中都是可见的。Enum 类型的缺省情况是 Public。 Private 可选的。表示该 Enum 类型只在所声明的模块中是可见的。 name 必需的。该 Enum 类型的名称。name 必须是一个合法的 Visual Basic 标识符,在定义该 Enum 类型的变量或参数时用该名称来指定类型。 membername 必需的。用于指定该 Enum 类型的组成元素名称的合法 Visual Basic 标识符。 constantexpression 可选的。元素的值(为 Long 类型)。可以是别的 Enum 类型。如果没有指定 constantexpression,则所赋给的值或者是 0(如果该元素是第一个 membername),或者比其直接前驱的值大 1。 说明 所谓枚举变量,就是指用 Enum 类型定义的变量。变量和参数都可以定义为 Enum 类型。Enum 类型中的元素被初始化为 Enum 语句中指定的常数值。所赋给的值可以包括正数和负数,且在运行时不能改变。例如: Enum SecurityLevel IllegalEntry = -1 SecurityLevel1 = 0 SecurityLevel2 = 1 End Enum Enum 语句只能在模块级别中出现。定义 Enum 类型后,就可以用它来定义变量,参数或返回该类型的过程。不能用模块名来限定 Enum 类型。类模块中的 Public Enum 类型并不是该类的成员;只不过它们也被写入到类型库中。在标准模块中定义的 Enum 类型则不写到类型库中。具有相同名字的 Public Enum 类型不能既在标准模块中定义,又在类模块中定义,因为它们共享相同的命名空间。若不同的类型库中有两个 Enum 类型的名字相同,但成员不同,则对这种类型的变量的引用,将取决于哪一个类型库具有更高的引用优先级。 不能在 With 块中使用 Enum 类型作为目标。
挺大个人了,就不能好好的直接回答楼主的问题吗。 楼主,从访问权限方面去考虑这个问题,你要保证所有用到这个枚举的方法能够访问到这个枚举 你把枚举定义为Public,如果这个枚举是在一个私有类或窗体中,那么有没有被一个公共或者公共类当成了返回值。有就错了, 其它情况再回复。
赵4老师 2018-02-09
  • 打赏
  • 举报
回复
Enum 语句 定义枚举类型。 语法 [Public | Private] Enum name membername [= constantexpression] membername [= constantexpression] . . . End Enum Enum 语句包含下面部分: 部分 描述 Public 可选的。表示该 Enum 类型在整个工程中都是可见的。Enum 类型的缺省情况是 Public。 Private 可选的。表示该 Enum 类型只在所声明的模块中是可见的。 name 必需的。该 Enum 类型的名称。name 必须是一个合法的 Visual Basic 标识符,在定义该 Enum 类型的变量或参数时用该名称来指定类型。 membername 必需的。用于指定该 Enum 类型的组成元素名称的合法 Visual Basic 标识符。 constantexpression 可选的。元素的值(为 Long 类型)。可以是别的 Enum 类型。如果没有指定 constantexpression,则所赋给的值或者是 0(如果该元素是第一个 membername),或者比其直接前驱的值大 1。 说明 所谓枚举变量,就是指用 Enum 类型定义的变量。变量和参数都可以定义为 Enum 类型。Enum 类型中的元素被初始化为 Enum 语句中指定的常数值。所赋给的值可以包括正数和负数,且在运行时不能改变。例如: Enum SecurityLevel IllegalEntry = -1 SecurityLevel1 = 0 SecurityLevel2 = 1 End Enum Enum 语句只能在模块级别中出现。定义 Enum 类型后,就可以用它来定义变量,参数或返回该类型的过程。不能用模块名来限定 Enum 类型。类模块中的 Public Enum 类型并不是该类的成员;只不过它们也被写入到类型库中。在标准模块中定义的 Enum 类型则不写到类型库中。具有相同名字的 Public Enum 类型不能既在标准模块中定义,又在类模块中定义,因为它们共享相同的命名空间。若不同的类型库中有两个 Enum 类型的名字相同,但成员不同,则对这种类型的变量的引用,将取决于哪一个类型库具有更高的引用优先级。 不能在 With 块中使用 Enum 类型作为目标。

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧