文档库 最新最全的文档下载
当前位置:文档库 › Flash舞台随窗口大小动态调整

Flash舞台随窗口大小动态调整

Flash舞台随窗口大小动态调整
Flash舞台随窗口大小动态调整

本文介绍如何建立一个舞台随窗体尺寸大小动态改变的Flash例子,使用的脚本为AS3.0 1.建立工程

2.新建一个AS文件,主要实现舞台的动态缩放功能

代码如下:

package {

import flash.display.Sprite;

import flash.display.Stage;

import flash.events.Event;

import flash.external.ExternalInterface;

public class BrowserCanvas {

public static const HACK_MARGIN_BOTTOM:String = "marginBottom"; //Adds a negative bottom margin to object tags to compensate for browser weirdness

public static const HACK_IE_REPARENT:String = "IEReparent"; //In IE, create a container div which encapsulates the object tag in order to hav min/max sizes work

public static const HACK_UNIQUE_ID:String = "uniqueId"; //If you put both an embed and object tag with the same id, this tries to compensate

private var stage:Stage;

private var containerId:String;

private var _width:String;

private var _minWidth:String;

private var _maxWidth:String;

private var _height:String;

private var _minHeight:String;

private var _maxHeight:String;

private var timerSprite:Sprite;

public function BrowserCanvas ( stage:Stage,containerId:String=null , browserHacks:Array=null ) {

trace("BrowserCanvas - Copyright (c) 2008 Noel Billig (https://www.wendangku.net/doc/021325453.html,)");

this.stage = stage;

timerSprite = new Sprite();

_width = String( stage.stageWidth );

_height = String( stage.stageHeight );

if (browserHacks == null) browserHacks = [HACK_MARGIN_BOTTOM,HACK_IE_REPARENT,HACK_UNIQUE_ID];

this.containerId = containerId;

if (this.containerId == null) this.containerId = ExternalInterface.objectID;

if (this.containerId == null) this.containerId = ExternalInterface.call(JSScripts.GET_FLASH_ID, stage.loaderInfo.url);

if (browserHacks.length != 0) {

this.containerId = ExternalInterface.call(JSScripts.INSERT_BROWSER_HACKS, this.containerId, browserHacks.join(","));

}

}

public function set width(newWidth:String):void {

this._width = formatSize(newWidth);

invalidate();

}

public function set minWidth(newWidth:String):void {

this._minWidth = formatSize(newWidth);

invalidate();

}

public function set maxWidth(newWidth:String):void {

this._maxWidth = formatSize(newWidth);

invalidate();

}

public function set height(newHeight:String):void {

this._height = formatSize(newHeight);

invalidate();

}

public function set minHeight(newHeight:String):void {

this._minHeight = formatSize(newHeight);

invalidate();

}

public function set maxHeight(newHeight:String):void {

this._maxHeight = formatSize(newHeight);

invalidate();

}

private function formatSize(size:String):String {

if (size == null) return ""; //Null causes opera to never clear the appropriate values, so use empty string

return (int(size) == 0) ? size : size+"px";

}

private function invalidate():void {

timerSprite.addEventListener(Event.ENTER_FRAME,update);

}

private function update(event:Event):void {

timerSprite.removeEventListener(Event.ENTER_FRAME,update);

ExternalInterface.call(JSScripts.RESIZE_CONTAINER,containerId,_width,_height,_minWidth,_ minHeight,_maxWidth,_maxHeight);

}

}

}

class JSScripts {

public static var GET_FLASH_ID:XML =

;

public static var INSERT_BROWSER_HACKS:XML =

;

public static var RESIZE_CONTAINER:XML =

;

}

3.建立Flash文件场景相关的类

package {

import flash.display.Sprite;

import flash.display.StageAlign;

import flash.display.StageScaleMode;

import flash.events.Event;

import flash.events.MouseEvent;

import flash.text.TextField;

import flash.text.TextFormat;

//导入第2节中建立的类

import BrowserCanvas;

[SWF(width="550", height="400", frameRate="30", backgroundColor="#000000")]

public class ResizeSceneClass extends Sprite {

private var canvas:BrowserCanvas;

public function ResizeSceneClass () {

//Set up the stage so we don't scale (you may not want to do this, depending on your desired goal)

stage.align = StageAlign.TOP_LEFT;

stage.scaleMode = StageScaleMode.NO_SCALE;

canvas = new BrowserCanvas(stage);

stage.addEventListener(MouseEvent.CLICK,randomSize);

}

private function randomSize(event:Event=null):void {

canvas.width = String( Math.random()*500 + 200);

canvas.height = String( Math.random()*500 + 200);

}

}

}

4.把ResizeSceneClass和第1节建立的Flash文件相关

到此完成

Flash舞台随窗口大小动态调整

本文介绍如何建立一个舞台随窗体尺寸大小动态改变的Flash例子,使用的脚本为AS3.0 1.建立工程 2.新建一个AS文件,主要实现舞台的动态缩放功能 代码如下:

package { import flash.display.Sprite; import flash.display.Stage; import flash.events.Event; import flash.external.ExternalInterface; public class BrowserCanvas { public static const HACK_MARGIN_BOTTOM:String = "marginBottom"; //Adds a negative bottom margin to object tags to compensate for browser weirdness public static const HACK_IE_REPARENT:String = "IEReparent"; //In IE, create a container div which encapsulates the object tag in order to hav min/max sizes work public static const HACK_UNIQUE_ID:String = "uniqueId"; //If you put both an embed and object tag with the same id, this tries to compensate private var stage:Stage; private var containerId:String; private var _width:String; private var _minWidth:String; private var _maxWidth:String; private var _height:String; private var _minHeight:String; private var _maxHeight:String; private var timerSprite:Sprite; public function BrowserCanvas ( stage:Stage,containerId:String=null , browserHacks:Array=null ) { trace("BrowserCanvas - Copyright (c) 2008 Noel Billig (https://www.wendangku.net/doc/021325453.html,)"); this.stage = stage; timerSprite = new Sprite(); _width = String( stage.stageWidth ); _height = String( stage.stageHeight ); if (browserHacks == null) browserHacks = [HACK_MARGIN_BOTTOM,HACK_IE_REPARENT,HACK_UNIQUE_ID]; this.containerId = containerId;

Flash 8 形状补间动画详解及实例

形状补间动画是Flash中非常重要的表现手法之一,运用它,你可以变幻出各种奇妙的不可思议的变形效果。 本节从形状补间动画基本概念入手,带你认识形状补间动画在时间帧上的表现,了解补间动画的创建方法,学会应用“形状提示”让图形的形变自然流畅,最后,提供了二个实例练手,帮助你更深地理解形状补间动画。 1.形状补间动画的概念 (1)形状补间动画的概念 在Flash的时间帧面板上,在一个时间点(关键帧)绘制一个形状,然后在另一个时间点(关键帧)更改该形状或绘制另一个形状,Flash 根据二者之间的帧的值或形状来创建的动画被称为“形状补间动画”。 (2)构成形状补间动画的元素 形状补间动画可以实现两个图形之间颜色、形状、大小、位置的相互变化,其变形的灵活性介于逐帧动画和动作补间动画二者之间,使用的元素多为用鼠标或压感笔绘制出的形状,如果使用图形元件、按钮、文字,则必先“打散”再变形。 (3)形状补间动画在时间帧面板上的表现 形状补间动画建好后,时间帧面板的背景色变为淡绿色,在起始帧和结束帧之间有一个长长的箭头,如图3-3-1所示。 图3-3-1 形状补间动画在时间帧面板上的标记 (4)创建形状补间动画的方法 在时间轴面板上动画开始播放的地方创建或选择一个关键帧并设置要开始变形的形状,一般一帧中以一个对象为好,在动画结束处创建或选择一个关键帧并设置要变成的形状,再单击开始帧,在【属性】面板上单击【补间】旁边的小三角,在弹出的菜单中选择【形状】,此时,时间轴上的变化如图3-3-1所示,一个形状补间动画就创建完毕。 2.认识形状补间动画的属性面板 Flash的【属性】面板随鼠标选定的对象不同而发生相应的变化。当我们建立了一个形状补间动画后,点击时间帧,【属性】面板如图3-3-2所示。

如何实现控件随对话框大小变化而自动调整大小和位置

如何实现控件随对话框大小变化而自动调整大小和位置 VC++ 2009-12-28 20:27:42 阅读461 评论0字号:大中小订阅 1. 处理对话框的WM_SIZE,然后用MoveWindow或者SetWindowPos来把对话框上面的控件重新调整新位置和大小。 2. 基本的做法就是响应WM_SIZE消息,并按照窗口大小比例来调整控件的位置和大小,控件的大小最好设置成窗口的百分之几,这样的话,就可以根据窗口的大小随时调整了。 3. 每次OnSize 即可获得一个CRect,然后根据这个CRect来确定这些控件的位置和大小,使用函数MoveWindow 或SetWindowpos实现。 4. 1)通过下面两个函数获取的是显示屏幕的大小【屏幕的分辨率】(不包括任务栏等区域): int nFullWidth=GetSystemMetrics( SM_CXFULLSCREEN ); //屏幕宽度 int nFullHeight=GetSystemMetrics( SM_CYFULLSCREEN ); //屏幕高度 2)这两个函数获取的是真正屏幕的大小【屏幕的分辨率】(包括任务栏等区域): int cx = GetSystemMetrics( SM_CXSCREEN ); int cy = GetSystemMetrics( SM_CYSCREEN ); 如:用前两个函数获取的大小可能是1024*687 ,而用下边两个获取的就是1024*768。 5. 在OnSize() 中调用:GetClientRect() 和GetWindowRect() 函数可获取窗口大小,但需注意得到的是设备坐标,如果需要画图什么的还需要转换成逻辑坐标。 6. 字体大小随窗口变化而自动变化,比如说始终使字的高度始终占窗口的1/3。使用: 1). 在Creat中将nHeight设成窗口长度或者宽度的一定比值就行了(最好在onsize函数中设置); 2). 使用WM_FONTCHANGE 消息。 ***************************************************************************************************** ************************************** 转载自: https://www.wendangku.net/doc/021325453.html,/u/20090314/16/835a3bbb-2d13-4842-922a-8a07cde1a055.html (作者:Fireway2008) 总结步骤: 1.创建一个CWnd* 的数组,在初始化时取的各个控件的句柄,存在这个数组里面 2.处理WM_SIZE事件,可以得到新变化后的窗口和最初窗口的变化比例kx,ky 3.对数组中的每一个控件,计算新位置 4.MoveWindow移动到新位置

Flash 补间形状、补间动画、传统补间的主要区别

Flash 补间形状、补间动画、传统补间的主要区别(2015-04-19 15:14:46) 注意:

在Flash中,补间形状(形状(变形)动画)只能针对矢量图形进行,也就是说,进行变形动画的首、尾关键帧上的图形应该都是矢量图形, 矢量图形的特征是:在图形对象被选定时,对象上面会出现白色均匀的小点。利用工具箱中的直线、椭圆、矩形、刷子、铅笔等工具绘制的图形,都是矢量图形。 在Flash中,传统补间(动作(动画)补间动画)只能针对非矢量图形进行,也就是说,进行运动动画的首、尾关键帧上的图形都不能是矢量图形,它们可以是组合图形、文字对象、元件的实例、被转换为“元件”的外界导入图片等。转为元件能修改的属性参数比较多,因此在上表对象中统一为元件。 非矢量图形的特征是:在图形对象被选定时,对象四周会出现蓝色或灰色的外框。利用工具箱中的文字工具建立的文字对象就不是矢量图形,将矢量图形组合起来后,可得到组合图形,将库中的元件拖曳到舞台上,可得到该元件的实例。 滤镜:图形效果,可以为文本、按钮和影片剪辑增添有趣的滤镜视觉效果。使用补间动画可让应用的滤镜动起来。 遮罩层的应用 1. 建立各图层中对象:可先建欲作被遮罩图层再建欲作遮罩图层 2欲作遮罩图层在上,图即为通透区欲作被遮罩图层在下 2. 效果制作:其中一层做动画设计等 3. 将欲作遮罩图层(现为普通图层)转为遮罩层:快捷菜单中转。欲看效果将两图层锁住 引导层与运动引导层的区别:

引导层的应用 引导层起到辅助其他图层静态对象定位的作用。单独使用(无须使用被引导层),引导层上的内容不会输出(即不显示在发布的SWF 文件中),性质和辅助线差不多。 为了在绘画时帮助对齐对象,可创建引导层,然后将其它图层上的对象与在引导层上创建的对象对齐。引导层不会导出,因此不会显示在发布的SWF 文件中。任何图层都可以作为引导层。图层名称左侧的辅助线图标表明该层是引导层。 运动引导层的应用 要控制传统补间动画图层(即被引导图层)中的对象的移动,可使用运动引导层。 1. 建被引导图层:建内容及动画。 2内容可以使用影片剪辑、图形元件、按钮、文字等,但不能应用形状(矢量图)2最常用的动画形式是动作(动画)补间动画 2被引导图层可为多个 2. 建运动引导层: 2内容可以是用钢笔、铅笔、线条、椭圆工具、矩形工具或画笔工具等绘制出的线段。 2导出影片中此层不可见 3. 附着:在被引导图层动画开始和结束的关键帧上,让元件的注册点(选中元件上的带十字圆)对准运动引导层线段的开始和结束的端点 注意:

使用菜单、工具栏来改变窗口的大小与颜色-15页word资料

使用菜单、工具栏来改变窗口的大小与颜色 10、WinForms高级编程 目标 创建一个更改窗口的大小与颜色的应用程序。创建一个单文档的文本编辑器应用程序。指导教师讲解阶段目标 第一部分指导(60分钟) 练习1:使用菜单、工具栏来改变窗口的大小与颜色 问题 主菜单、快捷菜单、工具栏和状态栏的应用实例 指导教师讲解问题说明 用户在窗体上单击右键,弹出图示的快捷菜单。执行其中的颜色命令可产生与主菜单中相应命令等效的结果。某命令执行时菜单项左侧带有"?"标记。再次执行该菜单命令取消相应的颜色及菜单项左侧的"?"标记,将颜色恢复为背景色。执行快捷菜单中的"红"命令,然后再次打开快捷菜单后,如图1.2所示。 图1.1默认窗体背景色 图1.2红色背景色 分析 指导教师分析解题思路 添加工具栏和状态栏后,窗体的界面设计如图1.3所示。主要用到了这些控件:MenuStrip,Context MenuStrip,ToolStrip,StatusStrip。 图1.3窗体设计界面 推荐步骤: (1)创建Windows应用项目。 (2)按照设计界面添加相应的控件,并在主菜单和快捷菜单中添加相应的菜单项;并添加相应的点击处理事件函数。 (3)完整的代码如下: using System;

using System.Collections.Generic; using SystemponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace menuToolStatus{ public partial class Form1:Form public Form1() InitializeComponent(); private void MenuItem_default_Click(object sender,EventArgs e) this.BackColor=Control.DefaultBackColor; MenuItem_default.CheckState=CheckState.Indeterminate; cMenuItem_default.CheckState=CheckState.Indeterminate; MenuItem_blue.Checked=MenuItem_green.Checked=MenuItem_red. Checked=false; cMenuItem_blue.Checked=cMenuItem_green.Checked=cMenuItem_r ed.Checked=false; StatusLabel3.Text="默认颜色"; private void cMenuItem_default_Click(object sender,EventArgs e) MenuItem_default_Click(sender,e); private void MenuItem_red_Click(object sender,EventArgs e) MenuItem_red.Checked=!MenuItem_red.Checked; if(MenuItem_red.Checked) this.BackColor=Color.Red; MenuItem_red.CheckState=CheckState.Indeterminate;

动画补间和形状补间有什么区别

一、图形有二种类型:矢量图形和位图图形; (1)矢量图形:文件体积小,是由一个个单独的点构成,每个点都有各自的属性,如位置、颜色等,矢量图形放大后不失真、无马蹇克、不会产生模糊和锯齿。 而矢量图像属于描述性,以线段和计算公式作为记录的对象。而矢量图像是根据放大后的坐标重新生成图像,不会产生模糊和锯齿。)为什么矢量图像“饱经风霜”却依旧“面不改色”呢?这就是因为前面说过的矢量图像的特点:通过记忆线段的坐标来记录图像。 图像放大缩小的同时坐标也放大缩小,而各个坐标之间的相对位置并没有改变。然后根据改动后的坐标重新生成图像。因此无论放大多少都不会失真。矢量图则损失相对较少,矢量图更多的用于工程作图中.比如说ACD. (2)位图图形:就是以无数的色彩点组成的点阵图案,当你无限放大时你会看到一块一块的像素色块,效果会失真。位图,也叫做点阵图,删格图象,像素图,简单的说,就是最小单位由象素构成的图,缩放会失真。 位图由像素组成.而失量图由失量线组成,再有的区别就是.位图可以表现的色彩比较多. 而位图更多的应用在作图中.比如PS 二、补间动画有二种:动画补间和形状补间 什么是FLASH形状补间动画? 形状补间:是由一个物体到另一个物体间的变化过程,像由三角形变成四方形等。时间轴上形状补间是淡绿色底加一个黑色箭头组成的。 在时间面板上,我们在一个关键帧上面绘制一个图形,然后在另一个关键帧上绘制一个图形或者是将开始一个图形的形状进行改变,FLASH两个关键帧之间的形状或者是值的改变的动画就叫做形状补间动画。 (一).形状补间动画规则:FLASH中形状补间动画只能对矢量图形进行,制作形状补间动画时,首尾关键帧上的图形都应该是矢量图形,有大小,移动,颜色,透明度,旋转属性可以改变。除此之外,还多了一个外形的变化(比如说方形变为圆形,就只能用形状动画,动画补间是做不出来这种效果的。 2.矢量图形的特征是:图形对象被选中时,对象上面会出现白色的均匀的小点。 3.矢量图形来源: 1)利用工具箱中的直线、椭园、矩形、刷子、铅笔等工具绘制的图形

VB中控件位置大小自动适应窗体变化的三种模式详解

VB中控件位置大小自动适应窗体变化的三种模式详解.doc 代码是无需更改的。 第一种。就是最实用的,就是所有控件的width和height按比例随窗体变化,位置也是当然是按比例哦。控件的字体不变。如下复制到代码: '改比例,字体不该。最实用 Option Explicit Private FormOldWidth As Long '保存窗体的原始宽度 Private FormOldHeight As Long '保存窗体的原始高度 Private Sub Form_Load() Call ResizeInit(Me) '在程序装入时必须加入 End Sub Private Sub Form_Resize() Call ResizeForm(Me) '确保窗体改变时控件随之改变 End Sub '在调用ResizeForm前先调用本函数 Public Sub ResizeInit(FormName As Form) Dim Obj As Control FormOldWidth = FormName.ScaleWidth FormOldHeight = FormName.ScaleHeight On Error Resume Next For Each Obj In FormName Obj.Tag = Obj.Left & " " & Obj.Top & " " & Obj.Width & " " & Obj.Height & " " Next Obj On Error GoTo 0 End Sub '按比例改变表单内各元件的大小,在调用ReSizeForm前先调用ReSizeInit函数 Public Sub ResizeForm(FormName As Form) Dim Pos(4) As Double Dim i As Long, TempPos As Long, StartPos As Long Dim Obj As Control Dim ScaleX As Double, ScaleY As Double ScaleX = FormName.ScaleWidth / FormOldWidth '保存窗体宽度缩放比例 ScaleY = FormName.ScaleHeight / FormOldHeight '保存窗体高度缩放比例 On Error Resume Next For Each Obj In FormName StartPos = 1 For i = 0 To 4 '读取控件的原始位置与大小 TempPos = InStr(StartPos, Obj.Tag, " ", vbTextCompare) If TempPos > 0 Then

C#自定义控件实现控件随窗口大小改变

1.新建用户控件,取名MyForm。 2.将默认的UserControl改成Form 3.在类中添加以下代码 private float X, Y; //获得控件的长度、宽度、位置、字体大小的数据 private void setTag(Control cons)//Control类,定义控件的基类 { foreach (Control con in cons.Controls) { con.Tag = con.Width + ":"+ con.Height + ":"+ con.Left + ":"+ con.Top + ":" + con.Font.Size;//获取或设置包含有关控件的数据的对象

if (con.Controls.Count > 0) setTag(con);//递归算法 } } private void setControls(float newx, float newy, Control cons)//实现控件以及字体的缩放 { foreach (Control con in cons.Controls) { string[] mytag = con.Tag.ToString().Split(new char[] { ':' }); float a = Convert.ToSingle(mytag[0]) * newx; con.Width = (int)a; a = Convert.ToSingle(mytag[1]) * newy; con.Height = (int)(a); a = Convert.ToSingle(mytag[2]) * newx; con.Left = (int)(a); a = Convert.ToSingle(mytag[3]) * newy; con.Top = (int)(a); Single currentSize = Convert.ToSingle(mytag[4]) * newy; con.Font = new Font(https://www.wendangku.net/doc/021325453.html,, currentSize, con.Font.Style, con.Font.Unit); if (con.Controls.Count > 0) { setControls(newx, newy, con);//递归 } } } private void MyForm_Resize(object sender, EventArgs e) { float newx = (this.Width) / X;//当前宽度与变化前宽度之比 float newy = this.Height / Y;//当前高度与变化前宽度之比 setControls(newx, newy, this); this.Text = this.Width.ToString() + ""+ this.Height.ToString(); //窗体标题显示长度和宽度

电脑应用窗口的大小调节方法

电脑应用窗口的大小调节方法 很多用户问我Win7系统打开的窗口太小了,比如:右击桌面、QQ登陆面板等;除了修改电脑分辨率外?大家知道电脑应用窗口的大小调节吗?下面我们就给大家详细介绍一下吧! ?1、每个应用的窗口大小和位置信息存储在: “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applic ationFrame\Positions\[应用的PackageFamilyName]![应用的ID]”下的PositionObject中。其中E序存储,格式如下: ?0x0000:永远为0x0000002C。 ?0x0004:激活了窗口最大化时为0x00000002,其余时候是0x00000000。?0x0008:窗口关闭时的状态。使用窗口大小时为0x00000001,最小化时为0x00000002,最大化时为0x00000003。 ?如果当前状态为最小化0x00000002,下次打开窗口时:如果0x0004为 0x00000002,就会以最大化状态打开窗口;如果0x0004为0x00000000,就会使用窗口大小还原窗口。 ?0x000C:最小化时为0xFFFF8300,其余时候是0xFFFFFFFF。 ?0x0010:永远为0xFFFFFFFF。 ?0x0014:永远为0xFFFFFFFF。 ?0x0018:永远为0xFFFFFFFF。 ?0x001C:窗口左上角像素的X-7,图中为0x000000C8(十进制200)。(可以得到结论,随机生成的位置即使最靠左上角也会在左侧空出7像素) ?0x0020:窗口左上角像素的Y,图中为0x00000040(十进制64)。 ?0x0024:窗口右下角像素的X-8,图中为0x000003F8(十进制1016)。

2018-修改游戏窗口化大小-精选word文档 (11页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除! == 本文为word格式,下载后可方便编辑和修改! == 修改游戏窗口化大小 篇一:常用电脑快捷键大全及游戏全屏问题 常用电脑快捷键大全 按”shift”+”6” 是省略号??, 方法:shift+6(主键盘上的6,就是Y键对上去的那个6),前提是在你有五笔输入法的状态栏上,必须是中文标点,就是有个软件盘的旁边那个标点符号必须是空心的.) 另一个方法是:按Ctrft不放,按主键盘区“。”切换中英文标点输入法。 、、、退格键的左边是顿号键。点符号必须是空心的.) 快捷键列表 单独按Windows:显示或隐藏“开始”功能表 Windows+BREAK:显示“系统属性” 对话框 Windows+D:显示桌面 Windows+M:最小化所有窗口 Windows+Shift+M:还原最小化的窗口 Windows+E:开启“资源管理器” Windows+F:查找文件或文件夹 Windows+CTRL+ F:查找电脑 Windows+F1:显示Windows “帮助” Windows+R:开启“运行” 对话框

Windows+U:开启“公用程序管理器” Windows+L:锁定计算机(Windows XP新功能) Windows按住不动+Tab:打开的应用程序切换,立体效果(win7系统支持)★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ Ctrl快捷键 Ctrl+S 保存 Ctrl+W 关闭程序 Ctrl+N 新建 Ctrl+O 打开 Ctrl+Z 撤销 Ctrl+F 查找 Ctrl+X 剪切 Ctrl+C 复制 Ctrl+V 粘贴 Ctrl+A全选 Ctrl+[ 缩小文字 Ctrl+] 放大文字 Ctrl+B 粗体 Ctrl+I 斜体 Ctrl+U 下划线 Ctrl+Shift输入法切换 Ctrl+空格中英文切换 Ctrl+回车 QQ号中发送信息 Ctrl+Home 光标快速移到文件头

Flash8形状补间动画详解及实例

Flash8形状补间动画详解及实例 Flash8形状补间动画详解及实例 2010-01-21 17:25:02| 分类:flash技法教程| 标签:|字号大中小订阅 本文引用自迎春《Flash8形状补间动画详解及实例》 引用 迎春的Flash8形状补间动画详解及实例 1.形状补间动画的概念 (1)形状补间动画的概念 在Flash的时间帧面板上,在一个时间点(关键帧)绘制一个形状,然后在另一个时间点(关键帧)更改该形状或绘制另一个形状,Flash 根据二者之间的帧的值或形状来创建的动画被称为“形状补间动画”。 (2)构成形状补间动画的元素 形状补间动画可以实现两个图形之间颜色、形状、大小、位置的相互变化,其变形的灵活性介于逐帧动画和动作补间动画二者之间,使用的元素多为用鼠标或压感笔绘制出的形状,如果使用图形元件、按钮、文字,则必先“打散”再变形。

(3)形状补间动画在时间帧面板上的表现 形状补间动画建好后,时间帧面板的背景色变为淡绿色,在起始帧和结束帧之间有一个长长的箭头,如图3-3-1所示。 图3-3-1 形状补间动画在时间帧面板上的标记 (4)创建形状补间动画的方法 在时间轴面板上动画开始播放的地方创建或选择一个关键帧并设置要开始变形的形状,一般一帧中以一个对象为好,在动画结束处创建或选择一个关键帧并设置要变成的形状,再单击开始帧,在【属性】面板上单击【补间】旁边的小三角,在弹出的菜单中选择【形状】,此时,时间轴上的变化如图3-3-1所示,一个形状补间动画就创建完毕。2.认识形状补间动画的属性面板 Flash的【属性】面板随鼠标选定的对象不同而发生相应的变化。当我们建立了一个形状补间动画后,点击时间帧,【属性】面板如图3-3-2所示。 图3-3-2 形状补间动画【属性】面板 形状补间动画的【属性】面板上只有二个参数: (1)“简单”选项 在“0”边有个滑动拉杆按钮,单击后上下

FLASH实例练习--传统补间和形状补间动画

1、新建舞台,设置舞台大小和背景颜色,帧频为12 2、用文字工具"welcome”,将字母打散,调整各个字母的颜色,选中所有字母右键选择分散至各 个图层,分别选中各个字母转换为图片元件 3、选中W图层,在12帧处打一个关键帧,调整12帧处的位置,ALPHA值,做出飞入淡入 效果,在任意帧处右键选择传统补间动画,选中任意帧,在帧属性面板上选择补 间-旋转,做出旋转效果 4、选中E图层,将第1帧移至第13帧,在25帧处打一个关键帧,照以上步骤给 E字母 做出旋转淡入飞入效果 5、将各个字母依次做出旋转淡入飞入效果 6、用传统补间动画为各字母做出变色效果,结尾做出放大淡出效果 实例二:摇摆的坠子 1、新建舞台610*320,舞台色黑色,帧频为 30 2、用矩形工具绘制圆角方块,填充色为线性渐变,第一个色标( 64,146,200),第二个色 标(112,158,203),第三个色标(255,255,255),笔触为4,边框为线性渐变,第一个色标 (191,191,191),第二个色标(255,255,255),第三个色标(200,200,200),第四个色标 (64,64,64),圆角参数为5 3、用线条和椭圆工具来绘制连接绳子,最后将图形转换为图形元件 4、新建图层,命名为背景,拖至最下层,从文件-导入-导入到舞台,导入背景图片 5、选择坠子,为其添加投影滤镜,参数如图 1投影 模制X 5 强度50 % 品质1 角度斗5廿 距离5像薰 挖空□ 内阴影□ 隐藏对象□ 颜色■ 6、复制3个坠子,排列整齐,选中第一个和第四个坠子,右键选择分散至图层,分别命名为第1 块,第4块 7、选中第1块图层,在第25帧打一个关键帧,用任意变形工具调整第一个坠子的轴心 和位置,在第1帧右键选择创建传统补间,在第20帧打一个关键帧,调整坠子的位 子,使其有惯性效果,选择任意一帧,更改属性面板中缓动值为-100 & 选中第4块图层,在第20帧和第40帧各打一个关键帧,用任意变形工具调整第 4个坠子的轴心和位置,创建传统补间动画,调整缓动值为100 9、同理在第60和65帧位置打帧,调整位置,设置缓动值为-100 10、选中第1块图层,在第60帧打一个关键帧,复制第1帧到第80帧,创建传统补间动画, 在60-80帧之间设置缓动值为 100

调整 Windows 窗体的大小和比例

调整 Windows 窗体的大小和比例 .NET Framework 4.5 其他版本 此主题尚未评级 - 评价此主题 本主题提供一些链接,这些链接指向有关调整 Windows 窗体大小的信息。 本节内容 如何:调整 Windows 窗体的大小 提供有关指定 Windows 窗体大小的说明。 Windows 窗体中的自动缩放 讨论自动缩放功能如何使窗体及其控件在计算机之间正确地显示。 参考 Size 描述此类并提供指向其所有成员的链接。 TableLayoutPanel 描述此类并提供指向其所有成员的链接。 FlowLayoutPanel 描述此类并提供指向其所有成员的链接。 相关章节 更改 Windows 窗体外观 提供指向一些主题的链接,这些主题描述更改 Windows 窗体外观的其他方法。如何:使用设计器调整Windows 窗体的大小 .NET Framework 4.5 其他版本 此主题尚未评级 - 评价此主题 有多种方式可指定 Windows 窗体的大小。在 Visual Studio 中,可以通过使用“Windows 窗体设计器”或“属性”窗口来更改窗体的大小。有关通过使用代码更改窗体大小的信息,请参见如何:调整 Windows 窗体的大小。

说明 在Windows 窗体设计器中调整窗体的大小 1.在 Windows 窗体设计器中,单击该窗体以选定它。 2.单击并拖动窗体边框上出现的八个尺寸柄中的一个。尺寸柄看起来象小 说明 使用“属性”窗口调整窗体的大小 说明 请参见 任务 演练:创建可根据数据输入需要调整大小的Windows 窗体 演练:创建可根据本地化需要调整比例的布局 如何:使用AutoSize 属性和TableLayoutPanel 控件支持对Windows 窗体的本地化 如何:调整Windows 窗体上控件的大小 参考 Windows 窗体概述 概念 Windows 窗体中的自动缩放 其他资源 调整Windows 窗体的大小和比例 创建新的Windows 窗体

VB 布局随窗口大小改变)

VB 布局随窗口大小改变 凡用过VB编写Windows应用程序的用户都可能有过这样的经历:当一个经过精心设计的应用程序运行后,如果用户重新调整了窗体的大小,则控制在窗体中的相对位置、控件与窗体的大小比例均会严重失调,程序的界面变得面目全非。一个好的Windows应用程序的界面,自适应窗体尺寸改变的能力是必不可少的。笔者在这方面做了一些探讨,希望能对VB编程爱好者提供一些启发和帮助。 1、按照窗体尺寸缩放比例自动调整控件的大小 窗体和控件的大小由窗体和控件的Width属性和Height属性确定。所以当用户界面设计完成之后,窗体及其内部的各控件的Width, Height属性便随之确定下来;从而窗体相对于每一个控件,它们的宽度之比、高度之比均被确定。如果窗体Forml内的一个文本框Text1的宽(即Text1的Width属性值)为3610,高度(即Text1的Height属性值)为1935;而窗体Form1的上述两个值分别为4890和3615,则它们的宽度之比和高度之比分别为:361014890、193513615。当用户在程序启动后调整了窗体的尺寸,窗体的宽度和高度将分别为Form1.ScaleWidth,Form1.ScaleHeight;此时应该按上述比例来调整文本框Textl的的高度和宽度值。即: (调整后的Text1的Width属性值)/( Form1.ScaleWidth)=3610/4890; (调整后的Text1的Height属性值)/(Form1.Scale-Height)=1935/3615; 所以调整后的Text1的Width属性值=(3610/4890)* Form1.ScaleWidth; 调整后的Text1的Height属性值=(1935/3615) * Form1.ScaleHeight; 对于一般控件来说,应该有: 调整后的控件的Width属性值=(控件原Width属性值/窗体原Width属性值)*窗体.ScaleWidth 调整后的控件的Height属性值=(控件原Height属性值/窗体值/窗体原Height属性值)*窗 体.ScaleHeight 按照上述方法确定窗体缩放后控件Width和Height属性值,则当窗体尺寸被调整后,控件的大小将按比例得到相应的调整。 2、按照窗体尺寸缩放比例自动调整控件在窗体中的相对位置 控件在窗体中的位置由该控件的Left和Top属性确定。程序启动后如果窗体被缩放,只要按照缩放的比例来重新调整窗体内各控件的Left和Top属性值即可。 所以根据上面介绍的原理,在窗体被缩放之后,只要按照下面的关系来设置控件的Left和Top属性值即可。

Flash-补间形状、补间动画、传统补间的主要区别

Flash 补间形状、补间动画、传统补间的主要区别 (2015-04-19 15:14:46) 转载▼ 分类:平面动画设计(Flash) 注意: 在Flash中,补间形状(形状(变形)动画)只能针对矢量图形进行,也就是说,进行变形动画的首、尾关键帧上的图形应该都是矢量图形, 矢量图形的特征是:在图形对象被选定时,对象上面会出现白色均匀的小点。利用工具箱中的直线、椭圆、矩形、刷子、铅笔等工具绘制的图形,都是矢量图形。

在Flash中,传统补间(动作(动画)补间动画)只能针对非矢量图形进行,也就是说,进行运动动画的首、尾关键帧上的图形都不能是矢量图形,它们可以是组合图形、文字对象、元件的实例、被转换为“元件”的外界导入图片等。转为元件能修改的属性参数比较多,因此在上表对象中统一为元件。 非矢量图形的特征是:在图形对象被选定时,对象四周会出现蓝色或灰色的外框。利用工具箱中的文字工具建立的文字对象就不是矢量图形,将矢量图形组合起来后,可得到组合图形,将库中的元件拖曳到舞台上,可得到该元件的实例。 滤镜:图形效果,可以为文本、按钮和影片剪辑增添有趣的滤镜视觉效果。使用补间动画可让应用的滤镜动起来。 遮罩层的应用 1. 建立各图层中对象:可先建欲作被遮罩图层再建欲作遮罩图层 2欲作遮罩图层在上,图即为通透区欲作被遮罩图层在下 2. 效果制作:其中一层做动画设计等 3. 将欲作遮罩图层(现为普通图层)转为遮罩层:快捷菜单中转。欲看效果将两图层锁住 引导层与运动引导层的区别: 引导层的应用

引导层起到辅助其他图层静态对象定位的作用。单独使用(无须使用被引导层),引导层上的内容不会输出(即不显示在发布的SWF 文件中),性质和辅助线差不多。 为了在绘画时帮助对齐对象,可创建引导层,然后将其它图层上的对象与在引导层上创建的对象对齐。引导层不会导出,因此不会显示在发布的SWF 文件中。任何图层都可以作为引导层。图层名称左侧的辅助线图标表明该层是引导层。 运动引导层的应用 要控制传统补间动画图层(即被引导图层)中的对象的移动,可使用运动引导层。 1. 建被引导图层:建内容及动画。 2内容可以使用影片剪辑、图形元件、按钮、文字等,但不能应用形状(矢量图)2最常用的动画形式是动作(动画)补间动画 2被引导图层可为多个 2. 建运动引导层: 2内容可以是用钢笔、铅笔、线条、椭圆工具、矩形工具或画笔工具等绘制出的线段。 2导出影片中此层不可见 3. 附着:在被引导图层动画开始和结束的关键帧上,让元件的注册点(选中元件上的带十字圆)对准运动引导层线段的开始和结束的端点 注意:

mfc 控件大小随窗体改变而改变

一 一个基于对话框的MFC界面,怎么样才能让对话框里的控件能和对话框同比例变小变大?今天我一直想解决这个问题,这是师姐留给我的任务。经过在网上的大量搜素,终于找到了解决方法,其实比较简单。 一般情况下,我们新建的对话框,里面的“确定”和:取消”按钮,在对话框最大化得时候,不会一起变大的,而是保持原来的大小。 最简单的情况: 当我们点击最大化按钮的时候,对话框会最大化,但是控件“确定”和“取消”不会跟着变大。如果我们在对话框上面有多少控件,那么会很丑,而且很不实用,最大化本来就是想看的更清楚嘛。 我们可以采取下面的措施:对话框也是窗口,最大化是对窗口大小的改变,而在windows message handle中有个WM_SIZE的消息,该消息在窗口大小发生变化的时候会产生。那么我们可以根据这个消息,在窗口大小发生变化的时候,利用MoveWindow()函数来重新设置各个控件的大小。

还是以上面最简单的情况为例子: 1 首先要知道对话框大小是否改变,改变了多少,我们应该记录当前对话框的大小。 在对话框类中添加成员变量CRect m_rect 他是用来记录当前对话框的大小。我们在OnInitDialog()函数中获取对话框创建时的大小:GetClientRect(&m_rect); 2 增加消息WM_SIZE的消息响应函数OnSize():只要对话框大小发生变化,就会调用该函数。 3 在OnSize()函数中增加如下代码:(最简单的为例子,就一个确定按钮和取消按钮) void CTestDlg::OnSize(UINT nType, int cx, int cy) { CDialog::OnSize(nType, cx, cy); // TODO: Add your message handler code here for (int i=1;i<=2;i++) //因为是两个控件,所以这里用了循环 { CWnd *pWnd; pWnd = GetDlgItem(i); //获取ID为i的空间的句柄,因为“确认”ID为1,“取消”ID为2 if(pWnd) //判断是否为空,因为对话框创建时会调用此函数,而当时控件还未创建 { CRect rect; //获取控件变化前的大小 pWnd->GetWindowRect(&rect); ScreenToClient(&rect//将控件大小转换为在对话框中的区域坐标 //cx/m_rect.Width()为对话框在横向的变化比例

形状补间动画教学设计新部编版

教师学科教案[ 20 – 20 学年度第__学期] 任教学科:_____________ 任教年级:_____________ 任教老师:_____________ xx市实验学校

教学设计 形状补间动画 王小丽 初中信息技术

“形状补间动画”教学设计 142中学王小丽 教学内容分析 本课教学内容是新疆青少年出版社教科书《初中信息技术》八年级下册第五课。 动画制作对初二的学生来说还是有一定难度的,但学生的兴趣非常浓厚;本课主要学习形状补间动画的制作方法,比较形状补间动画与逐帧动画的区别;掌握“形状补间动画”与“逐帧动画的”区别及“形状补间动画”的制作方法是本节课的重点和难点。 教学对象分析 本节课的教学对象为初中二年级学生,初二绝大部分学生是刚刚接触FLASH内容,通过前几节课的学习对FLASH有了一定的了解,对该软件的窗口、面板、工具、图层等基础知识有一些初步认识,但是对FLASH软件还不能较全面的掌握和应用,还需要进一步巩固。 设计思想 围绕教材设计基本任务,并适当加以延伸,而对于基础好的同学设计拓展任务;让所有学生各有所得,在原有基础上都有所提高。 教学策略 采用有趣的素材,激发学生的学习兴趣,提高学生的学习力,让学生总有一种想尝试的感觉,不怕学生出问题,遇到困难,教师引导学生探究学习的方向,学生通过自主学习来解决困难,若解决不了,可以发挥组内“学习带头人”的作用(按照教师开学时设定的小组),全组中无论是组长还是组内其他成员,只要完成任务的同学都可以充当“学习带头人”,帮助后进的同学完成任务;若依旧无法解决的问题,在必要时教师设置排疑解难;让学生在尝试中去探索,在探索中获取知识,同时获得能力,通过本节课内容的学习与实践操作,不仅要使学生学会“形状补间动画”的制作,了解“形状补间动画”与“逐帧动画”的区别;而且还要充分利用“学习小组”的作用、充分利用本组“学习带头人”的作用,互相帮助,以优扶弱,充分调动所有学生的学习积极性,培养学生互助的精神;同时也可以减轻教师辅导的压力。我想作为教师的教学目标,不仅仅是传授知识点,

宽屏液晶调整Dosbox 窗口大小

宽屏液晶显示器,玩经典DOS游戏时,网上不少人碰到Dosbox 0.74无法调整窗口大小的问题 即使添加了 windowresolution=1024x640 output=opengl 这样的命令行也无法实现窗口大小的改变。 这里给出真正的解决方法。 其实添加 windowresolution= output= 两行本身是没错的,但这要建立在完整的conf文件的基础上。 ------------- 于是解决方法就很简单,就是添加完整的命令行 [sdl] fullscreen=false fulldouble=false fullresolution=original windowresolution=1024x640 output=opengl autolock=true sensitivity=100 waitonerror=true priority=higher,normal mapperfile=mapper-0.74.map usescancodes=true [render] frameskip=0 aspect=false scaler=normal2x -------------------------------- 这样就可以调整窗口模式下的窗口大小了 其中 ------------ 1. windowresolution=1024x640 的1024和640分别就是窗口大小,请自行调节。 ------ 2. scaler=normal2x 这一行是窗口模式的渲染方式,通常使用normal2x

其他的渲染方式有 none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x. 可以根据自己选择,有些渲染方式比如是不响应自定义分辨率的,如果发生自定义窗口大小无效的情况,请选用none, normal2x, normal3x等渲染方式。

相关文档
相关文档 最新文档