zoukankan      html  css  js  c++  java
  • Delphi 窗体失踪在最上面的代码

    unit ufrmSysPubMessage;

    interface

    uses
      Windows, Forms, Messages, Classes, ExtCtrls, Controls, StdCtrls;

    type
      TfrmSysPubMessage = class(TForm)
        Image1: TImage;
        lblMessage: TLabel;
        procedure FormCreate(Sender: TObject);
      protected
        IconID: PChar;
      public
        procedure WndProc(var Msg: TMessage); override;
        procedure ShowMessage(AMsg: string);
      end;

    implementation

    {$R *.DFM}

    { TfrmMessageForm }
    procedure TfrmSysPubMessage.ShowMessage(AMsg: string);
    var
      TempWidth : Integer;
    begin
      lblMessage.Caption := AMsg;
      Application.ProcessMessages;
      //调整窗体宽度
      TempWidth := lblMessage.Width + lblMessage.Left + Image1.Left;
      if TempWidth < 310 then
        TempWidth := 310;
      Width := TempWidth;
      if not Visible then
        Show;
      Application.ProcessMessages;
      FormStyle := fsStayOnTop;
    end;

    procedure TfrmSysPubMessage.FormCreate(Sender: TObject);
    begin
      inherited;
      IconID := IDI_ASTERISK;
      Image1.Picture.Icon.Handle := LoadIcon(0, IconID);
      //使本窗体始终处于最上面,以免其它窗体挡住它
      SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE);
    end;

    procedure TfrmSysPubMessage.WndProc(var Msg: TMessage);
    begin
      //屏蔽Alt+F4
      if Msg.wParam <> SC_CLOSE then
        inherited;
    end;

    end.

  • 相关阅读:
    CSS3 box-shadow(阴影使用)
    缩小窗口时CSS背景图出现右侧空白BUG的解决方法
    html打开个人QQ聊天页面
    帮助你实现元素动画的6款插件
    给出两个颜色,计算中间颜色返回数组
    名字首字母
    自适应网页设计
    tab切换jquery代码
    改变上传文件样式
    剑指offer 面试16题
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/5701259.html
Copyright © 2011-2022 走看看