《拓文asp.net网站内容管理系统》官方演示站。
 设为首页  
 收藏本站
 作者:黄振安
 QQ:53854651
首 页 开源拓文.NET编程网站编程网页设计图形图像数据库软件工程留言本
    站内搜索:  
您现在的位置: 拓文网络 → 网站编程 → ASP → 用Flash结合ASP制作计数器[正文]

热 门 文 章

相 关 文 章
  • ASP.NET性能优化
  • ASP脚本循环语句
  • 在.NET框架应用程序中发送电子邮件
  • .net打包自动安装数据库
  • asp.net开发wap必备:更好的匹配手机设备
  • 用ashx动态生成文件
  • windows 2003下asp.Net站点无法使用用户名+密码的方
  • ASP.NET中17种正则表达式
  • 提高ASP.Net应用程序性能的十大方法
  • 一个通过web.Mail发送邮件的类
  • 用Flash结合ASP制作计数器
     
    [作者:不详    转贴自:不详    点击数:    更新时间:2006-3-14 9:08:34]

    用Flash结合ASP制作计数器

    Blackflash

    虽然现在有很多网站提供免费的计数器,如果自己能动手做一个不是更好吗?所以今天我就教大家通过Flash结合ASP来制作计数器。

    1.新建一个文件,把当前层命名为“背景”,可以自己选择颜色,你也可以在此层中加入Movie Clip,这样可以让你的计数层更加动感,这可是文本计数器不可能实现的。再新建一层,命名为“数字”,用来存放计数器的显示数字。

    2.按“Ctrl+F8”新建一个“Movie Clip”,命名为“number”。在时间线中插入10帧,每一帧填写一个数字(从0~9),并用“Ctrl+K”来调整位置。回到背景层中,用“Ctrl+L”打开库。拖出6个“number”符号,用“Ctrl+K”调整位置,让它们之间的距离保持相等。打开菜单Modify→Instance面板,把它们从左到右命名为“100000”、“10000”、“1000”、“100”、“10”、“1”。

    3.计数器是由数据库来存放访问数记录的,每次打开时应该加上1位数字,所以我们就需要创建数据库文件。首先启动Microsoft Access(本人使用的是Access97),新建一个数据库,在新表中建一个字段“Count”,类型为整数。把这个表也命名为“Count”。打开任务栏中PWS图标的设置窗口,把计数器所在的目录定义为“Counter”的虚拟目录,并允许执行脚本程序。在Windows的控制面板里双击“ODBC数据源(32位)”图标,为数据库加一个系统DSN,命名为“Counter”。

    4.现在让我们回到Flash中,新建层“Action”用来存放脚本程序。选中第一帧,在脚本面板中写下Aciton(我们可以按面板右边的小三角转到Expert mode模式)

    count = “12345”

    tellTarget (“/1”) {

    stop ();

    j = /:count.length;

    i = /:count.charAt(j-1);

    gotoAndStop (++i);

    }

    tellTarget (“/10”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-2);

    gotoAndStop (++i);

    }

    tellTarget (“/100”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-3);

    gotoAndStop (++i);

    }

    tellTarget (“/1000”){

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-4);

    gotoAndStop (++i);

    }

    tellTarget (“/10000”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-5);

    gotoAndStop (++i);

    }

    tellTarget (“/100000”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-6);

    gotoAndStop (++i);

    }

    以上的脚本程序中,我们把变量Count值设为“12345”。现在可以按Ctrl+Enter来测试是否能正确地把一个内容为数字的字符串转换为用Movie Clip表示图形数字。

    接下来我们就开始编写ASP程序我们可以使用UltrEdit32或UltraDev4等软件来进行编写:

    5.建立新文件,命名为“Counter.asp”。工作流程应该是通过系统DSN建立与数据库“Counter.mdb”的连接,取出存在Count表里的数字值,并把这个值另加1以后存回数据库,最后把没有加1的数值返回给脚本程序,存入Count变量中。按照这样的思路,“Counter.asp”的代码应该这样写:

    <%

    count = 0

    Set objConn=Server.CreateObject(“ADODB.Connection”)

    ObjConn.Open(“DSN=counter”)

    StrQuery=“SELECT * FROM count”

    Set objRs=objConn.Execute(strQuery)

    Count=objRs(“count”)

    StrQuery=“UPDATE count SET count=” & count+1

    ObjConn.Execute (strQuery)

    ObjRs.Close

    Set objRs=Nothing

    ObjConn.Close

    Set objConn=Nothing

    Response.Write(“count=”&count)

    %>

    写好之后我们就可以用浏览器不断刷新来对它进行测试,看是否每次数值会增加1。

    6.最后我们要做的就是把ASP程序和Flash脚本程序结合起来。回到Flash中在时间线上选中“Action”层和“数字”层的第1帧向后拖到第3帧。然后在“Action”层第1、2帧用F6插入关键帧。在“数字”层第1帧插入关键帧,第2帧用F5沿用。在“背景”层中第3帧用F5沿用第1帧内容。

    选中“Aciton”层的第1帧里写下:

    count = 0

    tellTarget (“1”) {

    gotoAndstop (1);

    }

    tellTarget (“10”) {

    gotoAndstop (1);

    }

    tellTarget (“100”) {

    gotoAndstop (1);

    }

    tellTarget (“1000”) {

    gotoAndstop (1);

    }

    tellTarget (“10000”) {

    gotoAndstop (1);

    }

    tellTarget (“100000”) {

    gotoAndstop (1);

    }

    loadVariables (“counter.asp”,“”);

    程序使每一个数字显示为“0”,在最后高速为“Counter.asp”。为了使原来的脚本增加新的判断,下面就对它进行修改:

    if count <> 0) {

    tellTarget (“/1”) {

    stop ();

    j = /:count.length;

    i = /:count.charAt(j-1);

    gotoAndStop (++i);

    }

    tellTarget (“/10”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-2);

    gotoAndStop (++i);

    }

    tellTarget (“/100”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-3);

    gotoAndStop (++i);

    }

    tellTarget (“/1000”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-4);

    gotoAndStop (++i);

    }

    tellTarget (“/10000”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-5);

    gotoAndStop (++i);

    }

    tellTarget (“/100000”) {

    stop ();

    j = /:count.length;

    I = /:count.charAt(j-6);

    gotoAndStop (++i);

    }

    stop ();

    } else {

    gotoAndPlay (2);

    )

    至此计数器就做好了,可以把它放在浏览器中测试了。


    首页 | 1 | 尾页  共 1 页
     
    hch004 打印本页 关闭窗口

         文 章 评 论
    评论人 查看该文章的评论 发表时间
       笔 名* : 0 50分 60分 70分 80分 90分 100分
    评论内容 *: (最多1000字。当前字数:0)


    没有相关评论,欢迎您参与!

    - 关于本站 - 网站帮助 - 下载声明 - 友情连接 - 网站地图 -
    Copyright © 2005-2006 myTopWin.Com. All Rights Reserved . [桂ICP备06004496号]