zoukankan      html  css  js  c++  java
  • 重载 CreateParams 方法[1]: 从一个例子开始(取消窗口最大化、最小化按钮的三种方法)


    方法1: 使用 TForm 的 BorderIcons 属性
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      BorderIcons := BorderIcons - [biMinimize, biMaximize];
    end;
    
    end.
    

    方法2: 使用 SetWindowLong 函数
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.FormCreate(Sender: TObject);
    var
      ws: Integer;
    begin
      ws := GetWindowLong(Handle, GWL_STYLE);
      ws := ws xor WS_MINIMIZEBOX xor WS_MAXIMIZEBOX;
      SetWindowLong(Handle, GWL_STYLE, ws);
    end;
    
    end.
    

    方法3: 重载 CreateParams 方法
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
        procedure CreateParams(var Params: TCreateParams); override;
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.CreateParams(var Params: TCreateParams);
    begin
      inherited; //inherited CreateParams(Params);
      Params.Style := Params.Style xor WS_MINIMIZEBOX xor WS_MAXIMIZEBOX;
    end;
    
    end.
    
  • 相关阅读:
    【Redis】跳跃表原理分析与基本代码实现(java)
    小鹤音形指引
    Maven
    算法思维(长期更)
    多路平衡树之红黑树
    多路平衡树之B树
    多路平衡树之2-3查找树
    栈与队列
    树基本概念
    Vue学习
  • 原文地址:https://www.cnblogs.com/del/p/1281680.html
Copyright © 2011-2022 走看看