zoukankan      html  css  js  c++  java
  • 最大化最小化自定义窗口的尺寸

     

    unit uBaseForm;

    interface

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;

    type
      TPoint = record
        x: Integer;
        y: Integer;
      end;

      TMinMaxInfo = record
        ptReserved: TPoint;
        ptMaxSize: TPoint;
        ptMaxPosition: TPoint;
        ptMinTrackSize: TPoint;
        ptMaxTrackSize: TPoint;
      end;

      TWMGetMinMaxInfo = record
        Msg: Cardinal;
        Unused: Integer;
        MinMaxInfo: PMinMaxInfo;
        Result: Longint;
      end;

      TBaseForm = class(TForm)
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
      private
        procedure WMGetMinMaxInfo(var Message: TWMGetMinMaxInfo ); message WM_GETMINMAXINFO;
      end;

    var
      BaseForm: TBaseForm;

    implementation

    {$R *.dfm}

    procedure TBaseForm.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      Action := caFree;           
    end;

    procedure TBaseForm.WMGetMinMaxInfo(var Message: TWMGetMinMaxInfo);
    begin
      with Message.MinMaxInfo^ do
      begin
        //ptMaxSize.X := Screen.Width; {Width when maximized}
        //ptMaxSize.Y := 200; {Height when maximized}
        ptMaxPosition.X := 0; {Left position when maximized}
        ptMaxPosition.Y := Application.MainForm.Height; {Top position when maximized}
        //ptMinTrackSize.X := 100; {Minimum width}
        //ptMinTrackSize.Y := 100; {Minimum height}
        ptMaxTrackSize.X := Screen.Width; {Maximum width}
        ptMaxTrackSize.Y := screen.Height - Application.MainForm.Height -25; {Maximum height}
      end;
      Message.Result := 0; {Tell windows you have changed minmaxinfo}
      inherited;
    end;

    end.

  • 相关阅读:
    SQLite剖析之异步IO模式、共享缓存模式和解锁通知
    SQLite剖析之动态内存分配
    SQLite剖析之锁和并发控制
    SQLite剖析之临时文件、内存数据库
    SQLite剖析之数据类型
    关于Docker目录挂载的总结(一)
    docker常用命令
    玩转docker(一)
    go hello
    术语“go”不被识别为cmdlet,函数,脚本文件或可操作程序的名称
  • 原文地址:https://www.cnblogs.com/hnxxcxg/p/2940580.html
Copyright © 2011-2022 走看看