频道直达 - 学院 - 下载 - 交易 - 特效 - 字库 - 手册 -排名-工具- 繁體
网页教学网站开发 设为首页
加入收藏
联系我们
建站搜索: 常用广告代码   用户注册 | 用户登陆
您当前的位置:中国建站之家 -> 网站开发工具应用教程 -> Flash教程 -> 模拟dos中输入字符的效果

模拟dos中输入字符的效果

作者:未知  来源:转载  发布时间:2005-8-9 20:26:36  发布人:acx

减小字体 增大字体


模拟dos中输入字符的效果
                                  黄振雄
  http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' width=450 height=350>/Upload/2004_Pack/tr0802-cursor.swf

 1。建立文件框

 1) 按Ctrl+F8新建一个电影文件(movie clip),取名为“character”;

 2)选择“文字”工具(Text Tools),在“文字”工具的属性设置栏中设置好字符的颜色,大小,字体,字形等属性,并点选“文本框”属性按钮;http://www.7880.com/Upload/2004_Pack/tr0802-dos1.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos1.gif" border=0>

 3)在场景中用鼠标拖动创建一个固定宽度的文本框,如图所示;

 http://www.7880.com/Upload/2004_Pack/tr0802-dos2.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos2.gif" border=0>

 4)选中目标文本框后,选择菜单命令“Modify$#@62;Text field”(或对着文本框按右键,然后选“properties”选项;

 5)在弹出的“Text Field Properties”对话框中,将“Variable”设为“text”,选择“Options”中的“Disable editing”和“Disable selection”两项;及“Outlines”中的“Include all font outlines”,如图所示;
 http://www.7880.com/Upload/2004_Pack/tr0802-dos3.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos3.gif" border=0>

 
   2。制作光标

 1)按Ctrl+F8新建一个电影文件(movie clip),取名为“cursor”; 

 2)选中编辑层的第1帧,选择矩形工具“Rectangle”并在场景中创建一个无边框矩形;

 3)分别在第4帧和第7帧按快捷键$#@60;F6$#@62;插入关键帧,然后将第4帧和第7帧中的矩形删除,如图所示;

 http://www.7880.com/Upload/2004_Pack/tr0802-dos4.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos4.gif" border=0>

 4)双击时间编辑栏中的第7帧,在弹出的“Frame Properties”对话框中选“Actions”项,设置脚本为:
 Go to and play(1)
 如图所示;

 http://www.7880.com/Upload/2004_Pack/tr0802-dos5.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos5.gif" border=0>

   3。完成Actions控制

 1)按Ctrl+ 陆ㄒ桓龅缬拔募�╩ovie clip),取名为“typer”; 

 2)选中编辑层的第1帧,选择菜单命令“window$#@62;Library”,在弹出的历史库中将电影文件“cursor”拖到当前场景的中央,然后选中第35帧并按快捷键$#@60;F5$#@62;插入关键帧;

 3)选择菜单命令“Insert$#@62;Layer”插入一个新层,命名为“actions”;

 4)在“actions”编辑层的第5,6,7,帧和第20,21,22,35帧分别按快捷键$#@60;F6$#@62;插入关键帧;

 5)确定当前的编辑层为“actions”层,双击第1帧打开帧属性对话框,在“Lable”设置项中为该帧设置名称为“init”(如图所示);在“Actions”设置项中设第1帧的Actions为:

 Set Variable: "fontwidth" = 9
 Set Variable: "fontx" = GetProperty("",_x)
 Set Variable: "fonty" = GetProperty("",_x)

 注释:“fontwidth”变量是用来描述每个连续字节之间左边缘的距离;而“fontx”和“fonty”是用来测试光标的当前位置。 

 如图所示; 
 http://www.7880.com/Upload/2004_Pack/tr0802-dos6.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos6.gif" border=0>

  http://www.7880.com/Upload/2004_Pack/tr0802-dos7.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos7.gif" border=0>

 6)根据步骤5)的操作,将第5帧的Actions设为:

 Set Variable: "n" = 1
 Set Variable: "text" = "This is a DOS text typer effect."
 Comment: ----------------------------------------------
 Comment: clear out old text (NOTE: the first time you do this, there isnt any text to clear out! I just keep the code here because it doesnt do any harm.)
 Comment: ----------------------------------------------
 Set Variable: "c" = 1
 Loop While (c$#@60;=100)
 Remove Movie Clip ("../font"&c)
 Set Variable: "c" = c+1
 End Loop 

   注释:变量“n”用来保持目前字节的轨迹。因为第2关键帧和第3关键帧两者间相互循环,如果“n”变量都设为1,那么他们就可以各自重新排列,所以这里“n”的值设为1。“c”变量是一个简单的计数器,这里假定计数器的值在不超过100个字节的范围内浮动,如果你需要设为大于100时,可更改这个数值。

 如图所示;http://www.7880.com/Upload/2004_Pack/tr0802-dos8.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos8.gif" border=0>
  

 7)将第6帧的Actions设为:

 Set Variable: "length" = Length(text)
 If (n$#@60;=length)
 Comment: ----------------------------------------------
 Comment: move cursor
 Comment: ----------------------------------------------
 Set Property ("", X Position) = fontx+(fontwidth*(n))
 End If

 注释:这里光标移动n次,n是文字串中字节的数量。因使用了变量“fontwidth”,所以所有字节间有相同的空间,不要忘记,“font”是用来测试光标的初始位置。

 
 如图所示;http://www.7880.com/Upload/2004_Pack/tr0802-dos9.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos9.gif" border=0>

 
 8)将第7帧的Actions设为:

 If (n$#@60;=length)
 Comment: ----------------------------------------------
 Comment: type new character
 Comment: ----------------------------------------------
 Duplicate Movie Clip ("../original", "font"&n, n)
 Set Variable: "../font"&n&":text" = Substring(text,n,1)
 Set Property ("../font"&n, X Position) = fontx+(fontwidth*(n-1))
 Set Property ("../font"&n, X Position) = GetProperty("../cursor",_x)-fontwidth
 Set Property ("../font"&n, Y Position) = GetProperty("../cursor",_y)
 Set Variable: "n" = n+1
 Go to and Play (_currentframe-1)
 End If

   注释:这里再次使用“n”为计数器变量。开始时先复制空的文本框,并命名为“ongunal”。他会返回时间层的前一步,其脚本为:“../original”。把“font”的新名字留空,为了保持他们的轨迹不变,我们将“n”的数值加到“font”后面,以此作为新电影文件的名称,如“font1,font2,font3”。文本框变量在“original”电影文件中被命名为“text”,我们设置“../font(n):text”与文字串的“n”字节相等。增加“n”的值,使指针指向文字串的下一个字节,当到达最后那个字节时停止循环。

 如图所示;http://www.7880.com/Upload/2004_Pack/tr0802-dos10.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos10.gif" border=0>

 
 9)将第20帧的Actions设为:

 Set Variable: "n" = 1
 Set Variable: "text" = "It is really easy to use."
 Comment: ----------------------------------------------
 Comment: clear out old text (NOTE: the first time you do this, there isnt any text to clear out! I just keep the code here because it doesnt do any harm.)
 Comment: ----------------------------------------------
 Set Variable: "c" = 1
 Loop While (c$#@60;=100)
 Remove Movie Clip ("../font"&c)
 Set Variable: "c" = c+1
 End Loop 

 如图所示; http://www.7880.com/Upload/2004_Pack/tr0802-dos11.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos11.gif" border=0>

 
 10)将第21帧的Actions设为:

 Set Variable: "length" = Length(text)
 If (n$#@60;=length)
 Comment: ----------------------------------------------
 Comment: move cursor
 Comment: ----------------------------------------------
 Set Property ("", X Position) = fontx+(fontwidth*(n))
 End If

 如图所示;http://www.7880.com/Upload/2004_Pack/tr0802-dos9.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos9.gif" border=0>

 
 11)将第22帧的Actions设为: 

 If (n$#@60;=length)
 Comment: ----------------------------------------------
 Comment: type new character
 Comment: ----------------------------------------------
 Duplicate Movie Clip ("../original", "font"&n, n)
 Set Variable: "../font"&n&":text" = Substring(text,n,1)
 Set Property ("../font"&n, X Position) = fontx+(fontwidth*(n-1))
 Set Property ("../font"&n, X Position) = GetProperty("../cursor",_x)-fontwidth
 Set Property ("../font"&n, Y Position) = GetProperty("../cursor",_y)
 Set Variable: "n" = n+1
 Go to and Play (_currentframe-1)
 End If

 如图所示;
 http://www.7880.com/Upload/2004_Pack/tr0802-dos10.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos10.gif" border=0>

 12)第35帧的Actions设为:

 Go to and play(5)

 如图所示;
 http://www.7880.com/Upload/2004_Pack/tr0802-dos12.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos12.gif" border=0>

   4。后期处理

 1)返回scene1;

 2)选择菜单命令“window$#@62;library”,在历史库中将电影文件“typer”拖到当前场景中;

 3)在历史库中将电影文件“character”拖到当前场景中,并放置在“typer”的下方,如图所示;
 http://www.7880.com/Upload/2004_Pack/tr0802-dos13.gif" target=_blank>http://www.7880.com/Upload/2004_Pack/tr0802-dos13.gif" border=0>
 这样,模拟dos输入字符的效果制作完成。可按Ctrl+Enter测试作品。

将本文收藏到QQ书签与更多好友分享
[打 印]
[] [返回上一页] [收 藏]
上一篇文章:如何寄Email
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
精彩推荐
热门文章
· 注册码大全二
· 注册码大全四
· 注册码大全一
· 要10G免费网络硬盘的请进..
· 通过google 赶快来赚美金..
· 注册码大全十
· 头像-qq头像(qq新头像)4..
· 让你轻松架设FTP服务器1..
· 注册码大全三
· 梦幻背景图片7
· 卡通动物图片6
· 网页制作素材-按钮素材2..
· 让你轻松架设FTP服务器5..
· 风景图片8
· 注册码大全九
· 让你轻松架设FTP服务器2..
关注此文读者还看过
· Photoshop经典调色教程:..
· PHP4新函数集锦
· Photsohop定义动作打造纯..
· (PHP)模板引擎Smarty介绍..
· 精美汽车图片3
· PHP4之COOKIE支持详解
· CSS实现使超级连接放大显..
· VB.NET多线程开发实例
· 精彩新思路:Frontpage ..
· 定制404错误页面,并发信..
· ASP用户在线的制作方法
· jsp实现购物程序
· Dreamweaver MX Ultrade..
· 对一篇很长的文章做到完..
· Photoshop CS2中Smart O..
· ASP面向对象编程探讨及比..
相关文章
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 人才招聘
网站合作、内容监督、商务咨询:QQ: 9576619
Copyright ? 2005--2008 中国建站之家版权所有
粤ICP备05092265号