微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi 屏蔽任务栏,屏蔽热键

在自己的程序中将任务栏隐藏起来,并屏蔽Ctrl+Alt+Del和Alt+Tab等系统热键,也是很有趣的。要实现它们比较容易,但千万别忘了恢复正常,另外,本例中使用了3个API函数:FindWindow、ShowWindow和SystemParametersInfo,在使用它们之前一定要进行申明。

  Implementation
  var Hwnd:THandle;
  Tmp:integer;
  procedure TForm1.Button1Click(Sender: TObject);
  begin
  Hwnd:=FindWindow('Shell_TrayWnd',nil);
  if Hwnd<>0 then ShowWindow(Hwnd,SW_HIDE); //隐藏任务栏
  SystemParametersInfo(SPI_SCREEN
  SAVERRUNNING,1,@Tmp,0); //屏蔽系统热键
  end;
  procedure TForm1.Button2Click(Sender: TObject);
  ShowWindow(Hwnd,SW_SHOW); //恢复任务栏
  SystemParametersInfo(SPI_SCR
  EENSAVERRUNNING,0);
  //恢复系统热键

  end;


procedure TForm1.FormCreate(Sender: TObject);
var
  iTemp: integer;
begin
  iTemp := 0;
  SystemParametersInfo(SPI_SCREENSAVERRUNNING,@iTemp,0); //屏蔽Ctrl+Alt+Del
  SystemParametersInfo(SPI_SETFASTTASKSWITCH,0); //屏蔽Alt+Tab
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  iTemp: integer;
begin
  iTemp := 0;
  SystemParametersInfo(SPI_SCREENSAVERRUNNING,0); //屏蔽Alt+Tab
end;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐