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

📄 dpi14.htm

📁 delphi 教程 Delphi 6 常见的大部分函数的使用方法及使用例子
💻 HTM
字号:
<html>
<head>
<title>图像的随机动态显示</title>
 
 
 
 
 
<meta content="text/html; charset=gb2312" http-equiv=Content-Type>
 
 
</head>
<p align="center"><script src="../../1.js"></script></a>

<body bgcolor="#ffffff" leftmargin="5" topmargin="1" marginheight="5" marginwidth="5">
<div align=center> 
  <table border=0 cellpadding=0 cellspacing=0 width=680 align="center">
    <tbody> 
    <tr> 
       
    </tr>
    </tbody> 
  </table>
  <table border=0 bordercolordark=#66aaff bordercolorlight=#66aaff cellpadding=0 
cellspacing=0 width=680 align="center" height="128">
    <tbody> 
    <tr> 
      <td bgcolor=#F9D23C height=14> 
        <div align=center class=H1> <span style="LINE-HEIGHT: 18px"><big>图像的随机动态显示</big></span> 
          </font></b></font></b></font></div>
      </td>
    </tr>
    <tr valign=top> 
      <td class=H1 height=236> 
        <p align="center"><span style="LINE-HEIGHT: 18px"></span></p>
        <p><span style="FONT-SIZE: 9pt; LINE-HEIGHT: 18px">&nbsp;&nbsp; <strong>问题的提出</strong><br>
          &nbsp;&nbsp;&nbsp; 目前,Internet上和光盘中提供了许多流行的Windows屏幕保护程序,主要是动画加音乐。如山水、动植物、公司徽标和产品图片,家庭音乐相册等等。您曾想过制作一个家庭音乐相册屏幕保护程序吗?在电脑前连续工作了几小时的您,一定疲惫不堪,休息待机时,音乐响起,一幅幅照片在您面前闪现又消失……重温着往日美好的记忆,一切疲劳顿觉烟消云散!<br>
          &nbsp;&nbsp;&nbsp; Windows屏幕保护程序的开发,在一些书籍已有介绍,在此不加讨论。本文介绍一种实现图像随机动态显示的技术,方法简便,效果良好。<br>
          &nbsp;&nbsp;&nbsp; <strong>技术原理</strong><br>
          &nbsp;&nbsp;&nbsp; 用TImage组件装入待显示的相片位图,利用随机数发生器(函数Random())控制其在主窗体上的位置,以达到随机移动图像的目的。由TTimer组件控制图像定时显示和隐藏。<br>
          &nbsp;&nbsp; <strong>准备工作</strong><br>
          &nbsp;&nbsp;&nbsp; 建好应用软件主目录C:\ShowImage及其子目录Images和Sounds。用扫描仪将照片逐一扫入电脑,或者用数码相机拍摄后直接传入电脑,并用Photoshop或其它图像处理软件制作加工,以位图格式文件(.bmp)存入Images目录中。不失一般性,本文只演示一个图像(Diana.bmp)的动态显示。将音乐以波形格式文件(.wav)存入Sounds目录(本文略)。<br>
          &nbsp;&nbsp;&nbsp; <strong>实现步骤</strong></span></p>
        <p align="center"><img alt="12.jpg (8889 字节)" src="../pic/ll/12.jpg" tppabs="http://www.pcbyte.net/program/12.jpg" width="100" height="86"></p>
        <p align="center"><strong>(图一)</strong></p>
        <p><span style="FONT-SIZE: 9pt; LINE-HEIGHT: 18px">&nbsp;&nbsp;&nbsp; 
          1. 启动Delphi IDE,新建项目ShowImage.dpr,主窗体单元命名为Main.pas,存入C:\ShowImage目录。在主窗体上放入一个TImage组件和一个Ttimer组件。如图1所示:<br>
          &nbsp;&nbsp;&nbsp; 主窗体和各组件的主要属性按表1设置:</span></p>
        <p align="center"><span style="FONT-SIZE: 9pt; LINE-HEIGHT: 18px">&nbsp;&nbsp;&nbsp; 
          <strong>表1 主窗体和各组件属性设置</strong></span></p>
        <table border="1" width="100%">
          <tbody> 
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">组&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              件</td>
            <td align="middle" width="33%" style="font-size: 9pt"> 
              <p align="center">属 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 性 
            </td>
            <td align="middle" width="34%" style="font-size: 9pt">设&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              置</td>
          </tr>
          <tr> 
            <td align="middle" rowspan="5" width="33%" style="font-size: 9pt">FOM1</td>
            <td align="middle" width="33%" style="font-size: 9pt">BorderStyle</td>
            <td align="middle" width="34%" style="font-size: 9pt">bsNone</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Caption</td>
            <td align="middle" width="34%" style="font-size: 9pt"> </td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Color</td>
            <td align="middle" width="34%" style="font-size: 9pt">cLBlack</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Name</td>
            <td align="middle" width="34%" style="font-size: 9pt">Mainfom</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">WindowsState</td>
            <td align="middle" width="34%" style="font-size: 9pt">wsMaximized</td>
          </tr>
          <tr> 
            <td align="middle" rowspan="5" width="33%" style="font-size: 9pt">Imag1</td>
            <td align="middle" width="33%" style="font-size: 9pt">Align</td>
            <td align="middle" width="34%" style="font-size: 9pt">alNoe</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Name</td>
            <td align="middle" width="34%" style="font-size: 9pt">Dianaimage</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Picture</td>
            <td align="middle" width="34%" style="font-size: 9pt">Diana.bmp</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Stretch</td>
            <td align="middle" width="34%" style="font-size: 9pt">True</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Visible</td>
            <td align="middle" width="34%" style="font-size: 9pt">True</td>
          </tr>
          <tr> 
            <td align="middle" rowspan="3" width="33%" style="font-size: 9pt">Timer1</td>
            <td align="middle" width="33%" style="font-size: 9pt">Enabled</td>
            <td align="middle" width="34%" style="font-size: 9pt">True</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Interval</td>
            <td align="middle" width="34%" style="font-size: 9pt">1000</td>
          </tr>
          <tr> 
            <td align="middle" width="33%" style="font-size: 9pt">Name</td>
            <td align="middle" width="34%" style="font-size: 9pt">MoveTimer</td>
          </tr>
          </tbody> 
        </table>
        <p> </p>
        <p><span style="FONT-SIZE: 9pt; LINE-HEIGHT: 18px">&nbsp;&nbsp;&nbsp; 
          表1中Timer1组件的Interval属性为1000,表示间隔时间为1秒。<br>
          &nbsp;&nbsp;&nbsp; 2. 建立主窗体MainForm的OnCreate事件,加入下列语句,以初始化随机数发生器:Randomzie;<br>
          &nbsp;&nbsp;&nbsp; 3. 创建主窗体MainForm的OnKeyPress事件处理程序,在其Begin与End之间输入语句“Close;”,当按任意键时结束程序运行。<br>
          &nbsp;&nbsp;&nbsp; 4. 创建MoveTimer的OnTimer事件处理程序,这是本例程最重要的过程。见程序清单Main.Pas中的过程MoveTimerTimer。<br>
          &nbsp;&nbsp;&nbsp; 应注意的是,在算法中应确保图像不超出主窗体的用户区域(Client Area),这很重要。<br>
          &nbsp;&nbsp;&nbsp; 5. 编译、运行。软件启动后主窗体为满屏,黑色背景上一位女士微笑着时隐时现,每间隔1秒钟,便在不同的位置闪现,周而复始,具体位置是随机的。本例未设置鼠标响应事件,按键盘任意键,程序结束运行。如图2所示。</span></p>
        <p align="center"><img alt="12.jpg (8889 字节)" src="../pic/ll/11.jpg" tppabs="http://www.pcbyte.net/program/11.jpg" width="150" height="136"></p>
        <p align="center"><strong>(图二)</strong></p>
        <p><span style="FONT-SIZE: 9pt; LINE-HEIGHT: 18px">&nbsp;&nbsp;&nbsp; 
          <strong>高级话题</strong><br>
          &nbsp;&nbsp;&nbsp; 本例可作进一步的完善,例如:<br>
          &nbsp;&nbsp;&nbsp; 1. 增加背景音乐。<br>
          &nbsp;&nbsp;&nbsp; 2. 交替显示多幅不同图像。<br>
          &nbsp;&nbsp;&nbsp; 3. 为图像的显示增加特效,如淡入淡出等。<br>
          &nbsp;&nbsp;&nbsp; 限于篇幅,以上话题在此不加讨论,有兴趣的读者不妨一试。<br>
          &nbsp;&nbsp;&nbsp; 程序清单略。(海南省海口市<br>
          &nbsp;&nbsp;&nbsp; 海甸三西路16号 叶斗彪 570228)</span>
        <p align="center"><font 
      color=#ffa000><b><br>
          </b><b>                                            
      </td>
    </tr>
    </tbody> 
  </table>
</div>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

⌨️ 快捷键说明

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