• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Delphi > Delphi实现窗体感知鼠标滑过并自动隐藏与显示窗口的方法

Delphi实现窗体感知鼠标滑过并自动隐藏与显示窗口的方法

作者:xujh 字体:[增加 减小] 来源:互联网 时间:2017-05-28

xujh 通过本文主要向大家介绍了delphi dll窗体,delphi 隐藏窗体,delphi mdi窗体,delphi 创建窗体,delphi 打开窗体等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了Delphi实现窗体感知鼠标滑过并自动隐藏与显示窗口的方法。分享给大家供大家参考。具体实现方法如下:

const
 WM_MouseEnter = $B013;
 WM_MouseLeave = $B014;
type
 TfrmMain = class(TForm)
  .
  .
 Timer1: TTimer;
 procedure Timer1Timer(Sender: TObject);
 protected
 procedure WMMouseEnter(var Msg: TMessage); message WM_MouseEnter;
 end;
implementation
{$R *.dfm}
procedure TfrmMain.WMMouseEnter(var Msg: TMessage);
begin
 if(Top<0) then
 begin
 Top := 0;
 //为保证下拉窗体后呈现在最前面
 SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);
 //将窗体推到最前
 SetWindowPos(Handle,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);
 //然后取消窗体最前
 end;
 Timer1.Enabled := True;
end;
//依赖定时器定时检查鼠标是否还在窗体范围内,
//这样此能避免因为快速移动鼠标而丢失MOUSELEAVE事件
procedure TfrmMain.Timer1Timer(Sender: TObject);
var
 rc:TRECT;
 pt:TPOINT;
begin
 GetWindowRect(self.Handle,rc); //取窗体的矩形区域
 GetCursorPos(pt); //取得当前鼠标所在位置
 if(not PtInRect(rc,pt)) then //如果鼠标不在窗体范围内
 begin
  if(Top = 0) then
  //如果目前窗体正吸附在屏幕上沿,则上移隐藏窗体
  begin
   Top := 0-Height+2;
  end;
  Timer1.Enabled := False; //窗体隐藏后定时器关闭
  SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);
  //将窗体推到最前
 end;
end;
</div>

希望本文所述对大家的Delphi程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Delphi实现窗体感知鼠标滑过并自动隐藏与显示窗口的方法
  • delphi中一个值得大家来考虑的DLL问题

相关文章

  • 2017-05-28Delphi实现获取句柄并发送消息的方法
  • 2017-05-28Delphi实现窗口文字淡入淡出渐变效果的方法
  • 2017-05-28delphi发送消息控制滚动条使用示例
  • 2017-05-28Delphi隐藏TPageControl的标签实例介绍
  • 2017-05-28delphi 正弦曲线图
  • 2017-05-28Delphi下OpenGL2d绘图之画四边形的方法
  • 2017-05-28delphi实现将BMP格式图形转化为JPG格式图形的方法
  • 2017-05-28Delphi Command模式
  • 2018-11-21Delphi CLSIDFromProgID
  • 2017-05-28delphi建立、读取、存贮INI文件的方法《二》

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Delphi隐藏TPageControl的标签实例介绍
    • Delphi编程常用快捷键大全
    • wordpress主题支持自定义菜单及修改css样式实现方法
    • Delphi下OpenGL2d绘图之画四边形的方法
    • 插件管理框架 for Delphi(一)
    • delphi 正弦曲线图
    • Delphi修改操作注册表权限的代码
    • Delphi实现获取磁盘空间大小的方法
    • Delphi下OpenGL2d绘图之初始化流程详解
    • delphi7连接mysql5的实现方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有