zoukankan      html  css  js  c++  java
  • 学习 Message(19): WM_SYSCOMMAND 消息[三] : WParam 参数


    TMessage.WParam 就是 TWMSysCommand.CmdType; 这是系统命令编号.

    下面程序会把 WParam 拦截, 并显示的窗体标题.
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
      protected
        procedure WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.WMSysCommand(var Message: TWMSysCommand);
    var
      str: string;
    begin
      case Message.CmdType of
        SC_SIZE         : str := 'SIZE         ';
        SC_MOVE         : str := 'MOVE         ';
        SC_MINIMIZE     : str := 'MINIMIZE     ';
        SC_MAXIMIZE     : str := 'MAXIMIZE     ';
        SC_NEXTWINDOW   : str := 'NEXTWINDOW   ';
        SC_PREVWINDOW   : str := 'PREVWINDOW   ';
        SC_CLOSE        : str := 'CLOSE        ';
        SC_VSCROLL      : str := 'VSCROLL      ';
        SC_HSCROLL      : str := 'HSCROLL      ';
        SC_MOUSEMENU    : str := 'MOUSEMENU    ';
        SC_KEYMENU      : str := 'KEYMENU      ';
        SC_ARRANGE      : str := 'ARRANGE      ';
        SC_RESTORE      : str := 'RESTORE      ';
        SC_TASKLIST     : str := 'TASKLIST     ';
        SC_SCREENSAVE   : str := 'SCREENSAVE   ';
        SC_HOTKEY       : str := 'HOTKEY       ';
        SC_DEFAULT      : str := 'DEFAULT      ';
        SC_MONITORPOWER : str := 'MONITORPOWER ';
        SC_CONTEXTHELP  : str := 'CONTEXTHELP  ';
        SC_SEPARATOR    : str := 'SEPARATOR    ';
    
        61441: str := '拖动左边框    ';
        61442: str := '拖动右边框    ';
        61443: str := '拖动上边框    ';
        61444: str := '拖动左上角    ';
        61445: str := '拖动右上角    ';
        61446: str := '拖动下边框    ';
        61447: str := '拖动左下角    ';
        61448: str := '拖动右下角    ';
        61458: str := '拖动标题栏    ';
        61558: str := '横向滚动条滚动';
        61574: str := '双击横向滚动条';
        61575: str := '纵向滚动条滚动';
        61559: str := '双击纵向滚动条';
        61587: str := '点击最小化图标';
        61490: str := '在非最大化时双击标题栏';
        61730: str := '在最大化时双击标题栏';
      end;
    
      if str = '' then str := IntToStr(Message.CmdType);
    
      Text := str;
      inherited;
    end;
    
    end.
    
  • 相关阅读:
    Java中的引用
    JVM参数调优
    GCRoots
    JVM体系结构
    死锁编码及定位分析
    线程池(Java中有哪些方法获取多线程)
    Synchronized和Lock的区别
    阻塞队列BlockingQueue
    CountDownLatch/CyclicBarrier/Semaphore
    浅谈二分
  • 原文地址:https://www.cnblogs.com/del/p/1323813.html
Copyright © 2011-2022 走看看