用VB制作屏幕保护程序

原创 2001年09月10日 18:53:00
用VB制作屏幕保护程序
利用Visual Basic 制作屏幕保护程序非常容易。本文将详细给大家介绍制作屏幕保护程序的方法。
---- 一. 基本编程思路

---- 大家都知道屏幕保护程序就是利用变换的颜色或图形以防止不变化的屏幕像素被损伤。所以,屏幕保护程序就是显示不断变化或移动的图形,并且当有鼠标移动或按键时能够终止的程序。

---- 1. 编制屏幕保护图形

---- 2. 隐藏鼠标

---- 用ShowCursor Windows API 函数我们可以实现隐藏鼠标。

---- 3. 检测鼠标和按键行为

---- 检测上述行为以便退出屏幕保护程序

---- 4. Windows 调用屏幕保护程序的参数命令

---- /a 在显示器属性对话框中单击了改变口令按钮。

---- /p 每当选中显示器属性对话框中屏幕保护程序标签时,在对话框显示预览效果。

---- /c 在显示器属性对话框中单击了设置按钮。

---- /s 在显示器属性对话框中单击了预览按钮或屏幕保护程序被系统正常调用。

---- 5. 编译屏幕保护程序

---- 其实任何VB应用程序都可作为屏幕保护程序来运行,但为了被Windows 95 所调用,需要将它作为屏幕保护程序来编译。首先进入VB5编程环境,编好程序后选择/File/Make project菜单项,然后在File Name文本框中将后缀名EXE改为SCR。最后单击OK按钮,将生成的SCR文件拷到Windows目录下,就完成了屏幕保护程序的创建。

---- 二. 实例

---- 下面就用一个实例给大家详细说明屏幕保护程序的制作。

Option Explicit
Dim quitflag As Boolean ‘声明终止程序标志变量
Dim lleft
‘声明隐藏或显示鼠标的API函数
Private Declare Function ShowCursor Lib "user32"
(ByVal bShow As Long) As Long

‘检测鼠标单击或移动
Private Sub Form_Click()
quitflag = True
End Sub

Private Sub Form_MouseMove(Button As Integer,
Shift As Integer, X As Single, Y As Single)
Static xlast, ylast
Dim xnow As Single
Dim ynow As Single
xnow = X
ynow = Y
If xlast = 0 And ylast = 0 Then
xlast = xnow
ylast = ynow
Exit Sub
End If
If xnow < > xlast Or ynow < > ylast Then
quitflag = True
End If
End Sub

‘检测按键
Private Sub Form_KeyDown(KeyCode As Integer,
Shift As Integer)
quitflag = True
End Sub

Private Sub Form_Load()
Dim X As Long
lleft = 0
‘横向滚动文字的起始X坐标
If App.PrevInstance = True Then
‘用APP对象的PrevInstance属性
Unload Me
‘防止同时运行屏幕保护程序的两个实例
Exit Sub
End If
Select Case Ucase$(Left$(Command$, 2))
‘装载命令行参数
Case "/S" ‘在显示器属性对话框中单击了
预览按钮或屏幕保护程序被系统正常调用。
Show
‘全屏显示Form1窗体
Randomize
‘初始化随机数生成器
X = ShowCursor(False)
‘隐藏鼠标
BackColor = vbBlack
Do
Timer2.Enabled = True
‘启动Timer2 ,显示屏幕保护滚动文字
DoEvents
‘转让控制权,以便检测鼠标和按键行为
Loop Until quitflag = True
‘运行屏幕保护滚动文字直至有鼠标和按键行为
Timer2.Enabled = False
‘终止滚动文字
Timer1.Enabled = True
‘启动Timer1,退出屏幕保护程序
Case Else
Unload Me
Exit Sub
End Select
End Sub

Private Sub Form_Unload(Cancel As Integer)
Dim X
X = ShowCursor(True)
‘显示鼠标
End Sub

Private Sub Timer1_Timer()
Unload Me
‘退出屏幕保护程序
End Sub

Private Sub Timer2_Timer()
显示横向滚动文字
lleft = lleft + 100
If lleft >= 11810 Then
lleft = 0
Lab1.Top = Int(Rnd * 7000)
End If
Lab1.Left = lleft
Timer2.Enabled = False
End Sub

VB:绘图示例—屏保软件设计1

a
  • nxhujiee
  • nxhujiee
  • 2010年10月21日 00:09
  • 930

用VB制作屏幕保护程序

用VB制作屏幕保护程序利用Visual Basic 制作屏幕保护程序非常容易。本文将详细给大家介绍制作屏幕保护程序的方法。 ---- 一. 基本编程思路 ---- 大家都知道屏幕保护程序就是利用变换的...
  • firetoucher
  • firetoucher
  • 2001年09月10日 18:53
  • 1349

如何启动屏幕保护程序

当前屏幕保护程序在注册表中的位置:HKEY_CURRENT_USER/Control Panel/Desktop As for starting an exe in C#: Process myPro...
  • usersmj
  • usersmj
  • 2006年08月14日 17:42
  • 1785

U盘中病毒后文件变为屏幕保护程序恢复方法

可能是中病毒了插上你的U盘,不要打开,也不要点击任何“文件夹”。看一下U盘的盘符,假设为“X:”,记住。 点击“开始”——“运行”——输入“cmd”——运行,出来一个黑色窗口(命令提示符) 接着输入“...
  • kevin_cyj
  • kevin_cyj
  • 2016年05月10日 19:38
  • 7574

我的记事本(vb编写的)

源代码:http://download1.csdn.net/down3/20070606/06124205473.rar成品: http://download1.csdn.net/down3/2007...
  • foamflower
  • foamflower
  • 2007年06月06日 12:47
  • 965

一个可以留言的屏保!

  • 2009年11月27日 15:47
  • 988KB
  • 下载

VB编程破解Windows屏幕保护密码

大家都知道,屏幕保护密码最多为16个字符。微软内置了16字节的密钥:48 EE 76 1D 67 69 A1 1B 7A 8C 47 F8 54 95 97 5F。Windows便用上述密钥加密你输入...
  • vbcrack
  • vbcrack
  • 2005年03月02日 17:17
  • 749

控制屏幕保护程序API函数的C++类封装

控制屏幕保护程序API函数的C++类封装by 郭世龙简 介      前几天在codeproject上看到了一篇关于用C#封装控制的屏幕保护程序的文章,觉的很有用于是决定将其改装成C++类封装以供C+...
  • xylary
  • xylary
  • 2007年08月11日 00:00
  • 3664

打造自己的c#屏幕保护程序(,源码)

/***************************************************************************************************...
  • yandong19861103
  • yandong19861103
  • 2010年01月19日 10:46
  • 1185

用VB编写一个屏幕颜色拾取器

设计状态下窗口中添加两个Frame控件做为容器,加入二个PictureBox控件,一个PictureClip控件(其中装入一个设计好的鼠标指针Mask图片),两个文本框控件,几个Label控件,两个C...
  • griefforyou
  • griefforyou
  • 2004年07月07日 23:38
  • 1882
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用VB制作屏幕保护程序
举报原因:
原因补充:

(最多只允许输入30个字)