CPlApplet函数请教请给代码

解决方案 »

  1.   

    http://www.optimalcode.com/Guido/cplapps.html
      

  2.   

    PlApplet函数的原型为: function CPlApplet(
    hwndCPl: THandle; //Identifies the main
    window of the controlling application.
    uMsg: DWORD; // Specifies the message 
    being sent to the Control Panel application
    lParam1, lParam2: Longint // Specify
    additional message-specific information
    ): Longint; stdcall;---- CplApplet函数是控制面板与控制面板应用程序通讯的唯一方式。一个控制面板程序中的CplApplet函数的基本框架结构如下: 
    function CPlApplet(hwndCPl: THandle; uMsg: DWORD;
      lParam1, lParam2: Longint): Longint;
    begin
      //…
      case (uMsg) of
        CPL_INIT: begin {…} end;
        CPL_GETCOUNT: begin {…} end;
        CPL_INQUIRE: begin {…} end;
        CPL_NEWINQUIRE: begin {…} end;
        CPL_DBLCLK: begin {…} end;
        CPL_STOP: begin {…} end;
        CPL_EXIT: begin {…} end;
        CPL_STARTWPARMS: begin {…} end;
        CPL_SETUP: begin {…} end;
      end;
    //函数的返回值取决于uMsg
    end;---- 事实上,编写控制面板程序的主要任务都放在处理这些CPL_消息上,关于这些消息的含义,请参看Delphi 5所带的帮助文档Win32.hlp。 
    ---- 为了简化控制面板程序的创建,Delphi 5新增了一个可视化构件库CtlPanel.PAS。CtlPanel单元中定义了TAppletApplication(控制面板应用程序类)和TAppletModule类. 
      

  3.   

    CPlApplet的函数原形如下:  function CPlApplet(  hwndCPl:HWND; //程序主窗口的句柄  uMsg:word; //发送到控制面板程序的消息  lParam1:Longint; //消息参数  lParam2:Longint //消息参数  ):Longint  uMsg有如下几种形式:  消息 
     发生时刻 
      相应的处理方法 
     
    CPL_DBLCLK 
      用户双击了该程序对应的图标 
      显示程序的主界面
     
    CPL_EXIT 
      CPL_STOP之后 
      释放所有资源 
     
    CPL_GETCOUNT 
      CPL_INIT后 
     返回程序中对话框的数目 
     
    CPL_INIT 
     程序被装入内存后 
      初始化工作 
     
    CPL_INQUIRE* 
      CPL_GETCOUNT后 
      设定某个特定窗口的性质 
     
    CPL_NEWINQUIRE 
      CPL_GETCOUNT后 
     设定某个特定窗口的性质 
     
    CPL_SELECT* 
       
    CPL_STOP 
      程序关闭之前 
      释放对话框资源 
     
       
    * 是与旧版本的Windows兼容,Windows 9X/NT 4.0不再使用