timer事件执行
来源:互联网 发布:中科院下属企业知乎 编辑:程序博客网 时间:2024/06/06 04:37
timer事件执行
procedure Tfrm.GetFromFouce(Sender: TObject);
var
TopHandle: HWND ;
begin
TopHandle := FindWindow(nil,ShowHintInfo);
if not (GetParent(TopHandle) = frm.Handle) then
WindowActive(frm.Handle);
end;
function Tfrm.WindowActive(hwnd: THandle): boolean;
const
SPI_GETFOREGROUNDLOCKTIMEOUT = $2000;
SPI_SETFOREGROUNDLOCKTIMEOUT = $2001;
var
ForegroundThreadID: DWORD;
ThisThreadID : DWORD;
timeout : DWORD;
begin
if IsIconic(hwnd) then ShowWindow(hwnd, SW_RESTORE); //如果窗口最小化,激活窗口
if GetForegroundWindow = hwnd then Result := true //焦点为本窗口
else
begin
if ((Win32Platform = VER_PLATFORM_WIN32_NT) and (Win32MajorVersion > 4))
or((Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and
((Win32MajorVersion > 4) or ((Win32MajorVersion = 4) and
(Win32MinorVersion > 0)))) then
begin
Result := false;
ForegroundThreadID :=
GetWindowThreadProcessID(GetForegroundWindow,nil);
ThisThreadID := GetWindowThreadPRocessId(hwnd,nil);
if AttachThreadInput(ThisThreadID, ForegroundThreadID, true) then
begin
BringWindowToTop(hwnd);
SetForegroundWindow(hwnd);
AttachThreadInput(ThisThreadID, ForegroundThreadID, false);
Result := (GetForegroundWindow = hwnd);
end;
if not Result then
begin
SystemParametersInfo(SPI_GETFOREGROUNDLOCKTIMEOUT, 0, @timeout, 0);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(0),SPIF_SENDCHANGE);
BringWindowToTop(hwnd);
SetForegroundWindow(hWnd);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0,TObject(timeout), SPIF_SENDCHANGE);
end;
end
else
begin
BringWindowToTop(hwnd);
SetForegroundWindow(hwnd);
end;
Result := (GetForegroundWindow = hwnd);
end;
end;
- timer事件执行
- Timer事件
- 弱鸡2,C# 一个List里面都是timer,如果list被clear,timer事件还会执行吗?
- Timer 定时执行
- Java 定时执行 Timer
- 延时执行-----Timer
- timer 执行一次
- Timer实现定时执行
- C#使用Timer.Interval指定时间间隔与指定时间执行事件
- 事件:Timer的使用
- C# WPF添加timer,实现Timer事件
- tomcat timer 执行两次问题
- System.Timers.Timer 定时执行
- System.Timers.Timer 定时执行
- Java Timer定时器执行任务
- Python定时执行之Timer
- Python定时执行之Timer
- Global配置:Timer 计时器事件...
- Redis 事务是原子性的吗
- 重新认识HTML系列005——内容模型
- javascript继承(二)借用构造函数的方式继承(类继承)
- java7 计算日期相隔天数的最优方法
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.4基本类型与运算(4.4.5-4.4.10)
- timer事件执行
- Android地理位置获取的那些坑
- Learning-Based View Synthesis for Light Field Cameras
- 经典sql练习题
- hibernate中的对象有三种状态: 瞬时状态 (Transient),持久状态 (Persistent),
- Java设计模式详解之一单例模式
- 过网络验证的案例2017-0619
- 剑指offer——二叉搜索树与双向链表(好题)
- 算法竞赛知识提要2