获取当前活动窗体的窗体名称
var
CurHdl: Thandle;
procedure TfrmWndTool.tmr1Timer(Sender: TObject);
var
hdl: THandle;
iLen: Integer;
str: string;
begin
hdl:= GetForegroundWindow;
if (hdl<> handle)and(CurHdl<>hdl) then
begin
CurHdl:= hdl;
iLen:= SendMessage(hdl, WM_GETTEXTLENGTH,0,0)+1;
SetLength(str, iLen);
SendMessage(hdl, WM_GETTEXT, iLen, integer(str));
mmo1.Lines.Add(str);
end;
end;
SendMessage(hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); // 最大化
SendMessage(hwnd, WM_SYSCOMMAND, SC_MINIMIZE, 0); // 最小化
SendMessage(hwnd, WM_SYSCOMMAND, SC_CLOSE, 0); // 关闭
SetWindowPos(CurHdl, HWND_TOPMOST, 0,0,0,0, SWP_NOSIZE or SWP_NOMOVE);//窗体置顶
SetWindowPos(CurHdl, HWND_NOTOPMOST, 0,0,0,0, SWP_NOSIZE or SWP_NOMOVE);//取消置顶
SetWindowPos(CurHdl, HWND_NOTOPMOST, 0,0,0,0, SWP_NOSIZE or SWP_NOMOVE or SWP_HIDEWINDOW);//隐藏窗体
SetWindowPos(CurHdl, HWND_NOTOPMOST, 0,0,0,0, SWP_NOSIZE or SWP_NOMOVE or SWP_SHOWWINDOW);//显示窗体