zoukankan      html  css  js  c++  java
  • 学习 Message(10): WM_CancelMode 消息测试


    启动模式窗口, 当前窗口会收到一条 WM_CancelMode 消息; 改消息无参数.

    本例效果图:



    代码文件:
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Memo1: TMemo;
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        Button4: TButton;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
        procedure Button4Click(Sender: TObject);
      protected
        procedure WMCancelMode(var Message: TWMCancelMode); message WM_CANCELMODE;
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Memo1.Align := alLeft;
      Memo1.ScrollBars := ssVertical;
      Memo1.Clear;
      Position := poScreenCenter;
    end;
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShowMessage('ShowMessage');
    end;
    
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      InputBox('InputBox','Input','');
    end;
    
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      MessageBox(Handle, 'Test', 'MessageBox', 0);
    end;
    
    procedure TForm1.Button4Click(Sender: TObject);
    var
      form: TForm;
    begin
      form := TForm.Create(Self);
      form.Caption := 'Test';
      form.Width := Width div 2;
      form.Height := Height div 2;
      form.Position := poDesktopCenter;
      form.ShowModal;
    end;
    
    procedure TForm1.WMCancelMode(var Message: TWMCancelMode);
    begin
      Memo1.Lines.Add('收到 WMCancelMode 消息');
      Message.Result := 0;
    end;
    
    end.
    
    窗体文件:
    object Form1: TForm1
      Left = 0
      Top = 0
      Caption = 'Form1'
      ClientHeight = 161
      ClientWidth = 301
      Color = clBtnFace
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -11
      Font.Name = 'Tahoma'
      Font.Style = []
      OldCreateOrder = False
      OnCreate = FormCreate
      PixelsPerInch = 96
      TextHeight = 13
      object Memo1: TMemo
        Left = 8
        Top = 8
        Width = 185
        Height = 89
        Lines.Strings = (
          'Memo1')
        TabOrder = 0
      end
      object Button1: TButton
        Left = 207
        Top = 23
        Width = 75
        Height = 25
        Caption = 'Button1'
        TabOrder = 1
        OnClick = Button1Click
      end
      object Button2: TButton
        Left = 207
        Top = 54
        Width = 75
        Height = 25
        Caption = 'Button2'
        TabOrder = 2
        OnClick = Button2Click
      end
      object Button3: TButton
        Left = 207
        Top = 85
        Width = 75
        Height = 25
        Caption = 'Button3'
        TabOrder = 3
        OnClick = Button3Click
      end
      object Button4: TButton
        Left = 207
        Top = 116
        Width = 75
        Height = 25
        Caption = 'Button4'
        TabOrder = 4
        OnClick = Button4Click
      end
    end
    
  • 相关阅读:
    心得体悟帖---200209(效率太低的事情我是不会做的,这个可以解释我所有的行为)
    心得体悟帖---200209(顺心而动的睡觉方式(6+1或者5+2的睡觉方式))
    按钮用图片做背景hover时闪烁
    范仁义Emmet课程---1、HTML速写之Emmet语法规则
    CSS3疑难问题---5、:before和::before的区别
    reset.css是什么
    日常英语---200209(Abbreviations(Emmet Abbreviations Syntax))
    日常英语---200209(relative(layer model))
    日常英语---200209(Emmet Abbreviations Syntax)
    伪元素和伪类在chrome浏览器里面还是比较好区分的
  • 原文地址:https://www.cnblogs.com/del/p/1322205.html
Copyright © 2011-2022 走看看