看错题了,是应该像 hnjzaaa(小小鸟) 写的那样做。

解决方案 »

  1.   

    大家误会我的意思了,我上面那些代码编译运行都没问题的.其中if(m.Msg==1)是如果msg的ID号如果为1,也就是WM_CREATE消息(WM_CREATE常量的值为1),这样写没错,但以后阅读起来可能你不能一下子就清楚这句是什么意思.因为.net里没有定义WM_CREATE这样的常量.为了代码易于阅读,.net里面是否有为这些WM_XXXX之类的消息常量定义一些易于阅读的形式呀?如果没有,我们该怎样手工来定义才能使得代码易于阅读呢?
      

  2.   

    你可以 用 enum 来实现阿
      

  3.   

    .net里有没有提供这样的enum呢?
      

  4.   

    C#中没有消息映射的概念,不论什么,都以类表示,消息,事件,无一例外。
    在此机制上VC++.Net没有变化
      

  5.   

    有消息处理
    control 中的winproc
      

  6.   

    我 找到了一个所有windows消息的enum的定义
      

  7.   

    我在VB.NET中是这么用WndProc的
    Public Const SC_CLOSE As Integer = 61536
    Public Const WM_SYSCOMMAND As Integer = 274
    Protected Overloads Overrides Sub WndProc(ByRef m As Message)
    If m.Msg = WM_SYSCOMMAND AndAlso m.WParam.ToInt32 = SC_CLOSE ThenEnd If
    MyBase.WndProc(m)
    End Sub
      

  8.   

    过去c 和asp 有头文件可以不必命名常量而c# 用常量都必须自己命名,我推荐你自己将一些常用的常量(可以参考过去vc 的头文件),比如API 上的一些常量,定义到一个class.cs 中,以后就和过去的vc 当头文件一样用。。如果哪位有收集好的多多常量定义贴出来共享 ^o^ 。。
      

  9.   

    你可以下载我的api_explorer 软件,它会帮忙你生成近7xxx 的C#/VB.net 常数定义,下载地址: http://arli.yeah.net以下是原型内容:' Window Messages
    Const WM_NULL = &H0
    Const WM_CREATE = &H1
    Const WM_DESTROY = &H2
    Const WM_MOVE = &H3
    Const WM_SIZE = &H5Const WM_ACTIVATE = &H6
    '
    '  WM_ACTIVATE state valuesConst WA_INACTIVE = 0
    Const WA_ACTIVE = 1
    Const WA_CLICKACTIVE = 2Const WM_SETFOCUS = &H7
    Const WM_KILLFOCUS = &H8
    Const WM_ENABLE = &HA
    Const WM_SETREDRAW = &HB
    Const WM_SETTEXT = &HC
    Const WM_GETTEXT = &HD
    Const WM_GETTEXTLENGTH = &HE
    Const WM_PAINT = &HF
    Const WM_CLOSE = &H10
    Const WM_QUERYENDSESSION = &H11
    Const WM_QUIT = &H12
    Const WM_QUERYOPEN = &H13
    Const WM_ERASEBKGND = &H14
    Const WM_SYSCOLORCHANGE = &H15
    Const WM_ENDSESSION = &H16
    Const WM_SHOWWINDOW = &H18
    Const WM_WININICHANGE = &H1A
    Const WM_DEVMODECHANGE = &H1B
    Const WM_ACTIVATEAPP = &H1C
    Const WM_FONTCHANGE = &H1D
    Const WM_TIMECHANGE = &H1E
    Const WM_CANCELMODE = &H1F
    Const WM_SETCURSOR = &H20
    Const WM_MOUSEACTIVATE = &H21
    Const WM_CHILDACTIVATE = &H22
    Const WM_QUEUESYNC = &H23Const WM_GETMINMAXINFO = &H24Type MINMAXINFO
            ptReserved As POINTAPI
            ptMaxSize As POINTAPI
            ptMaxPosition As POINTAPI
            ptMinTrackSize As POINTAPI
            ptMaxTrackSize As POINTAPI
    End TypeConst WM_PAINTICON = &H26
    Const WM_ICONERASEBKGND = &H27
    Const WM_NEXTDLGCTL = &H28
    Const WM_SPOOLERSTATUS = &H2A
    Const WM_DRAWITEM = &H2B
    Const WM_MEASUREITEM = &H2C
    Const WM_DELETEITEM = &H2D
    Const WM_VKEYTOITEM = &H2E
    Const WM_CHARTOITEM = &H2F
    Const WM_SETFONT = &H30
    Const WM_GETFONT = &H31
    Const WM_SETHOTKEY = &H32
    Const WM_GETHOTKEY = &H33
    Const WM_QUERYDRAGICON = &H37
    Const WM_COMPAREITEM = &H39
    Const WM_COMPACTING = &H41
    Const WM_OTHERWINDOWCREATED = &H42               '  no longer suported
    Const WM_OTHERWINDOWDESTROYED = &H43             '  no longer suported
    Const WM_COMMNOTIFY = &H44                       '  no longer suported' notifications passed in low word of lParam on WM_COMMNOTIFY messages
    Const CN_RECEIVE = &H1
    Const CN_TRANSMIT = &H2
    Const CN_EVENT = &H4Const WM_WINDOWPOSCHANGING = &H46
    Const WM_WINDOWPOSCHANGED = &H47Const WM_POWER = &H48
    '
    '  wParam for WM_POWER window message and DRV_POWER driver notificationConst PWR_OK = 1
    Const PWR_FAIL = (-1)
    Const PWR_SUSPENDREQUEST = 1
    Const PWR_SUSPENDRESUME = 2
    Const PWR_CRITICALRESUME = 3Const WM_COPYDATA = &H4A
    Const WM_CANCELJOURNAL = &H4BType COPYDATASTRUCT
            dwData As Long
            cbData As Long
            lpData As Long
    End TypeConst WM_NCCREATE = &H81
    Const WM_NCDESTROY = &H82
    Const WM_NCCALCSIZE = &H83
    Const WM_NCHITTEST = &H84
    Const WM_NCPAINT = &H85
    Const WM_NCACTIVATE = &H86
    Const WM_GETDLGCODE = &H87
    Const WM_NCMOUSEMOVE = &HA0
    Const WM_NCLBUTTONDOWN = &HA1
    Const WM_NCLBUTTONUP = &HA2
    Const WM_NCLBUTTONDBLCLK = &HA3
    Const WM_NCRBUTTONDOWN = &HA4
    Const WM_NCRBUTTONUP = &HA5
    Const WM_NCRBUTTONDBLCLK = &HA6
    Const WM_NCMBUTTONDOWN = &HA7
    Const WM_NCMBUTTONUP = &HA8
    Const WM_NCMBUTTONDBLCLK = &HA9Const WM_KEYFIRST = &H100
    Const WM_KEYDOWN = &H100
    Const WM_KEYUP = &H101
    Const WM_CHAR = &H102
    Const WM_DEADCHAR = &H103
    Const WM_SYSKEYDOWN = &H104
    Const WM_SYSKEYUP = &H105
    Const WM_SYSCHAR = &H106
    Const WM_SYSDEADCHAR = &H107
    Const WM_KEYLAST = &H108
    Const WM_INITDIALOG = &H110
    Const WM_COMMAND = &H111
    Const WM_SYSCOMMAND = &H112
    Const WM_TIMER = &H113
    Const WM_HSCROLL = &H114
    Const WM_VSCROLL = &H115
    Const WM_INITMENU = &H116
    Const WM_INITMENUPOPUP = &H117
    Const WM_MENUSELECT = &H11F
    Const WM_MENUCHAR = &H120
    Const WM_ENTERIDLE = &H121Const WM_CTLCOLORMSGBOX = &H132
    Const WM_CTLCOLOREDIT = &H133
    Const WM_CTLCOLORLISTBOX = &H134
    Const WM_CTLCOLORBTN = &H135
    Const WM_CTLCOLORDLG = &H136
    Const WM_CTLCOLORSCROLLBAR = &H137
    Const WM_CTLCOLORSTATIC = &H138Const WM_MOUSEFIRST = &H200
    Const WM_MOUSEMOVE = &H200
    Const WM_LBUTTONDOWN = &H201
    Const WM_LBUTTONUP = &H202
    Const WM_LBUTTONDBLCLK = &H203
    Const WM_RBUTTONDOWN = &H204
    Const WM_RBUTTONUP = &H205
    Const WM_RBUTTONDBLCLK = &H206
    Const WM_MBUTTONDOWN = &H207
    Const WM_MBUTTONUP = &H208
    Const WM_MBUTTONDBLCLK = &H209
    Const WM_MOUSELAST = &H209Const WM_PARENTNOTIFY = &H210
    Const WM_ENTERMENULOOP = &H211
    Const WM_EXITMENULOOP = &H212
    Const WM_MDICREATE = &H220
    Const WM_MDIDESTROY = &H221
    Const WM_MDIACTIVATE = &H222
    Const WM_MDIRESTORE = &H223
    Const WM_MDINEXT = &H224
    Const WM_MDIMAXIMIZE = &H225
    Const WM_MDITILE = &H226
    Const WM_MDICASCADE = &H227
    Const WM_MDIICONARRANGE = &H228
    Const WM_MDIGETACTIVE = &H229
    Const WM_MDISETMENU = &H230
    Const WM_DROPFILES = &H233
    Const WM_MDIREFRESHMENU = &H234
    Const WM_CUT = &H300
    Const WM_COPY = &H301
    Const WM_PASTE = &H302
    Const WM_CLEAR = &H303
    Const WM_UNDO = &H304
    Const WM_RENDERFORMAT = &H305
    Const WM_RENDERALLFORMATS = &H306
    Const WM_DESTROYCLIPBOARD = &H307
    Const WM_DRAWCLIPBOARD = &H308
    Const WM_PAINTCLIPBOARD = &H309
    Const WM_VSCROLLCLIPBOARD = &H30A
    Const WM_SIZECLIPBOARD = &H30B
    Const WM_ASKCBFORMATNAME = &H30C
    Const WM_CHANGECBCHAIN = &H30D
    Const WM_HSCROLLCLIPBOARD = &H30E
    Const WM_QUERYNEWPALETTE = &H30F
    Const WM_PALETTEISCHANGING = &H310
    Const WM_PALETTECHANGED = &H311
    Const WM_HOTKEY = &H312Const WM_PENWINFIRST = &H380
    Const WM_PENWINLAST = &H38F' NOTE: All Message Numbers below 0x0400 are RESERVED.' Private Window Messages Start Here:
    Const WM_USER = &H400