⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 092803_05.htm

📁 对于学习很有帮助
💻 HTM
字号:
<html>

<head>
<link REL="stylesheet" HREF="/style.css" TYPE="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>计算机世界日报:
时隐时现的鼠标
</title>
<!--***********-->
</head>

<body bgcolor="#FFFFFF" >














<p><br>
<font color="#b904e8"><b><em><a href="class.htm">返回</a></em></b></font>
<center>
<font color="#0000c0"><h2>
时隐时现的鼠标
</h2></font>
<h3>
武汉市华中师大计科系
<br>江立 刘燕里
</h3>
</center>
<p><font color="#ffffff">----</font>
本文介绍了如何实现隐藏和重现鼠标的方法,可以广泛的应用于制作屏幕保护程序。另外,此方法还可以实现著名的“超级解霸”5.5版中的自动隐藏鼠标功能。
<p><font color="#ffffff">----</font>
    鼠标是我们使用得很多的输入工具,它帮了我们不少忙。但有些时候,我们总是要想方设法将它隐藏起来。比如,绝大多数的游戏开场动画在播放时都隐藏了鼠标。另一个例子是,当我们欣赏VCD时,屏幕中的鼠标常常会影响观赏效果。
<p><font color="#ffffff">----</font>
其实,隐藏鼠标并不难。实际上就是要设计一个很小的像屏幕程序保护那样的程序。当一段时间内,用户没有任何输入的情况下就自动隐藏鼠标,一旦用户进行任何输入立即重新显示出鼠标即可。著名的“超级解霸”5.5版中的自动隐藏鼠标功能其实就是这样实现的。下面给出用Delphi实现这一功能的方法,请先添加一个Timer组件,再设置Timer组件的Interval属性为2000(即延时2秒钟),然后编写如下的程序段即可。
<pre>
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics,
  Controls, Forms, Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    procedure FormMouseDown(Sender: TObject; 
              Button: TMouseButton;
              Shift: TShiftState; X, Y: Integer);
    procedure FormMouseMove(Sender: TObject; 
              Shift: TShiftState; X, Y: Integer);
    procedure FormKeyDown(Sender: TObject; 
              var Key: Word; Shift: TShiftState);
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  MouseHide: Boolean;

implementation

{$R *.DFM}

procedure DoMouse;
begin
  if MouseHide then
    begin
      Screen.Cursor:=crDefault; { 恢复鼠标 }
      MouseHide:=False;
    end
    else Form1.Timer1.Enabled:=True;
end;

procedure TForm1.FormMouseDown(Sender: TObject;
          Button: TMouseButton;
          Shift: TShiftState; X, Y: Integer);
begin
  DoMouse;
end;

procedure TForm1.FormMouseMove(Sender: TObject;
          Shift: TShiftState; X, Y: Integer);
begin
  DoMouse;
end;

procedure TForm1.FormKeyDown(Sender: TObject;
          var Key: Word; Shift: TShiftState);
begin
  DoMouse;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MouseHide:=True; { 初始化 }
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  MouseHide:=True;
  Screen.Cursor:=crNone; { 隐藏鼠标 }
  { 以下这一行可以不要,但会使程序效率降低 }
  Timer1.Enabled:=False;
end;

end.

</pre>
<p><font color="#ffffff">----</font>
    以上程序会像屏幕保护程序一样在鼠标移动、按下或键盘有键按下的情况下立即恢复鼠标的显示。有兴趣的朋友可以自己修改一下,就可以实现很多常见的鼠标隐藏和恢复的应用。比如,当我们用小屏幕来玩《真侍魂 2》时,鼠标的隐藏实际是用键盘是否有键按下来激活的。




 



<p align="right"><small><em>中国计算机世界出版服务公司版权所有</em></small> 
<br>
</p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -