procedure WMNID(var msg:TMessage); message WM_NID;编译不能通过 求助楼主blns(骑士007)2005-03-14 22:48:28 在 Delphi / Windows SDK/API 提问
做系统托盘时用到   
  procedure   WMNID(var   msg:TMessage);   message   WM_NID;   
    
  //这里不能通过[错误]   MsgMain.pas(115):   Unknown   directive:   'message'   
    
  begin   
      case   msg.LParam   of   
          WM_LBUTTONUp:   Form1.Visible:=not   Form1.Visible;   
          WM_RBUTTONUP:   ShowMessage('您点击的是右键');   
      End;   
  End;   
  
问题点数:20、回复次数:5
Top
 1 楼blns(骑士007)回复于 2005-03-15 09:01:14 得分 0 帮帮忙呀,急着用
Top2 楼519632()回复于 2005-03-15 09:22:25 得分 20procedure   WMNID(var   msg:TMessage);   
    
  begin   
      case   msg.LParam   of   
          WM_LBUTTONUp:   Form1.Visible:=not   Form1.Visible;   
          WM_RBUTTONUP:   ShowMessage('您点击的是右键');   
      End;   
  End;
Top3 楼blns(骑士007)回复于 2005-03-15 09:32:34 得分 0 做系统托盘程序,完全按照网上给的代码,可惜不行,帮帮忙,分不够在加   
    
  //****************系统托盘****************   
          //NotifyIcon为全局变量,在程序的开头已经定义了   
          with   NotifyIcon   do   
          begin   
              cbSize:=SizeOf(TNotifyIconData);   
              Wnd:=Handle;       //指向当前窗体Form1的句柄   
              uID:=1;   
              uFlags:=NIM_ICON   or   NIM_MESSAGE   or   NIM_TIP;   
    
  //这里也编不通,[错误]   MsgMain.pas(154):   Undeclared   identifier:   'NIM_ICON'   
    
              uCallBackMessage:=WM_NID;   
              hIcon:=Application.Icon.Handle;   
              szTip:='众恒汽修管理软件';
Top4 楼blns(骑士007)回复于 2005-03-15 10:28:01 得分 0 把message   WM_NID;   
  去掉后,procedure   WMNID(var   msg:TMessage);不起作用了
Top5 楼blns(骑士007)回复于 2005-03-15 11:45:18 得分 0 急等~~~

解决方案 »

  1.   

      //这里也编不通,[错误]  MsgMain.pas(154):  Undeclared  identifier:  'NIM_ICON'  
    其实原因就是因为前面的常量书写错误!              uFlags:=NIM_ICON  or  NIM_MESSAGE  or  NIM_TIP;  
    应改为:      uFlags:=NIF_ICON  or  NIF_MESSAGE  or  NIF_TIP;  就这么简单!!!