zoukankan      html  css  js  c++  java
  • Delphi中让窗口关闭按钮无效的6种方法

    1、
    procedure TForm1.WMInit(var msg: TWMInitMenuPOPUP);
    begin
      inherited;
      EnableMenuItem(msg.MenuPopup ,sc_Close,MF_BYCOMMAND or MF_GRAYED)
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
     PostMessage(handle, WM_INITMENUPOPUP, GetSystemMenu(handle, false), 0);
    end;


    2、
    procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      Action := CaNone;
    end;


    3、
    procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
      CanClose:=false;
    end;


    4、
    bordericons的bisystemmenu:=false;

    5、
    TForm1 = class(TForm)
     private
        procedure Sys(var msg: TMessage);message WM_SYSCOMMAND;
     public
       { Public declarations }
     end;

    procedure TForm1.Sys(var msg: TMessage);
    begin
     if msg.WParam = SC_CLOSE then
       msg.Result := 1;
    end;


    6、
    procedure WMInit(var msg: TWMInitMenu);message WM_INITMENU;

    procedure TForm1.WMInit(var msg: TWMInitMenu);
    begin
      inherited;
      EnableMenuItem(msg.Menu,sc_Close,MF_BYCOMMAND or MF_GRAYED)
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
     PostMessage(handle, WM_INITMENU, GetSystemMenu(handle, false), 0);
    end; 
    本文来自Delphi之窗,原文地址:http://www.52delphi.com

  • 相关阅读:
    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
    HAService 刨坑
    RocketMQ服务器监控误区
    Send [1] times, still failed
    RECONSUME_LATER
    RocketMQ 自定义文件路径
    RocketMQ 运维指令
    Thrift 学习记录
    服务网格(Service Mesh)学习记录
    Linux 安装 Apache
  • 原文地址:https://www.cnblogs.com/martian6125/p/9631248.html
Copyright © 2011-2022 走看看