DllImport("user32.dll")后,里面的宏要怎么处理,除了直接定义一个等于宏的常量外,还有其他办法吗?

解决方案 »

  1.   

    一般不定义成常量,而是定义成enum类型
    如下:
    public enum WindowExStyles
    {
    WS_EX_DLGMODALFRAME     = 0x00000001,
    WS_EX_NOPARENTNOTIFY    = 0x00000004,
    WS_EX_TOPMOST           = 0x00000008,
    WS_EX_ACCEPTFILES       = 0x00000010,
    WS_EX_TRANSPARENT       = 0x00000020,
    WS_EX_MDICHILD          = 0x00000040,
    WS_EX_TOOLWINDOW        = 0x00000080,
    WS_EX_WINDOWEDGE        = 0x00000100,
    WS_EX_CLIENTEDGE        = 0x00000200,
    WS_EX_CONTEXTHELP       = 0x00000400,
    WS_EX_RIGHT             = 0x00001000,
    WS_EX_LEFT              = 0x00000000,
    WS_EX_RTLREADING        = 0x00002000,
    WS_EX_LTRREADING        = 0x00000000,
    WS_EX_LEFTSCROLLBAR     = 0x00004000,
    WS_EX_RIGHTSCROLLBAR    = 0x00000000,
    WS_EX_CONTROLPARENT     = 0x00010000,
    WS_EX_STATICEDGE        = 0x00020000,
    WS_EX_APPWINDOW         = 0x00040000,
    WS_EX_OVERLAPPEDWINDOW  = 0x00000300,
    WS_EX_PALETTEWINDOW     = 0x00000188,
    WS_EX_LAYERED       = 0x00080000
    }网上有现成定义好的,可以找一下,不过你封装API有必要全部封装么?
      

  2.   

    欢迎各界.Net初学&高手们加入Q群12757054(要经常在线)
    希望大家的问题能够及时的得到解决.
      

  3.   

    这样不也是定义成常量了,还是要用一个数来赋值啊,只是用enum而已