打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在VFP中实现字符的淡出淡入
字符淡出淡入效果是指字符从背景色中渐渐显示出来,或渐渐隐入其中,如果我们能够在软件的封面上加入此功能,或作软件的说明, 定能为软件增色不少。笔者利用Visual FoxPro(以下简称VFP)这种常用的数据库开发语言,编写了一段程序,实现了该功能。

  我们知道,色彩是由三原色(红、绿、蓝)组成,三原色的比例不同 ,所配置出的颜色就会不同。在现实生活中,三原色中每种色彩的变化是连续的,因此可以组合出无穷色彩;而在计算机中,色彩的变化是数字化的,即离散非连续的,变化范围从0~255,共256种情况,因此我们只要控制三原色的变化量,就可以调配出所需要的色彩。如果我们可以连续控制三原色的变化量,就可以实现色彩的连续变化。

  VFP中有一个函数RGB(),该函数可以指定三原色的比例,返回单一的色彩值。该返回值可作为其它控件的前景色或背景色的值,即可赋予控件的forecolor或backcolor属性。该函数声明如下:

  RGB(nRedValue,nGreenValue,nBlueValue)

  其中nRedValue、nGreenValue、nBlueValue分别代表红、绿、蓝成份的强度,其大小变化范围是0~255;同时,VFP还提供了一个功能强大的控件——定时器,它可以按指定的时间执行一指定的操作,操作完成后,仍把控制权交给CPU完成其它工作。我们利用这两个工具就可以实现字符的淡出淡入。现将具体步骤说明如下:

  1.启动VFP,并生成一个空白的表单。
  2.将表单的backcolor属性设置为192、192、192,即表单的背景色设为灰色。
  3.在表单的Init过程中写入以下代码:
   public r,g,b
   r=192
   g=192
   b=192
  4.在表单的Click过程中写入以下代码:
   thisform.starttimer.enabled=.f.
   thisform.endtimer.enabled=.t.
  5.在表单中加入一个标鉴控制,并设置其属性如下:
   BackStyle: 0,表示透明
   Caption : 养老保险基金管理系统
   Forecolor: 192,192,192
   Name : label1
   FontSize : 20
  6.在表单中加入一个定时器控制,并设置其属性如下:
   Interval : 80
   Name :
  starttimer
   在timer过程中加入以下代码:
   if r 255
  r=r+1
   endif
   if b 255
  b=b+1
   endif
   if g 255
  g=g+1
   endif
   thisform.lable1.forecolor=rgb(r,g,b)
   thisform.refresh()
  7.在表单中再加入一个定时器控件,并设置其属性如下:
   Enabled : .f.,即假
   Interval : 5
   name
  : endtimer
   在Timer过程中加入以下代码:
   if r 192
  r = r-1
   endif
   if b 192
  b = b-1
   endif
   if g 192
  g=g-1
   endif
   thisform.label1.forecolor=rgb(r,g,b)
   thisform.refresh()

  完成以上步骤后,将表单存盘并运行,可以看到屏幕上出现一个灰色背景的窗口,窗口内从灰色到红色渐渐出现"养老保险基金管理系统 "的汉字,实现了淡入;在窗口内按一下鼠标左键,可以看到汉字从红色到灰色渐渐隐入到背景中去,实现了淡出。

  将该表单作为管理系统软件的封面,取得了良好的视觉效果。通过改变RGB()函数的参数值,可以实现其它颜色的变化。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
看实例学VFP:复选框控件
VFP查询系统实现技巧六则
看实例学VFP:页框控件的使用
编程入门网
VFP6.0中实现记录删除后自动调整编号
在组合框中创建多彩的项
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服