定制能够随意拖动的MIAW

2016-03-18 15:55 0 1 收藏

下面是个超简单的定制能够随意拖动的MIAW教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

【 tulaoshi.com - 设计软件 】


  定制能够随意拖动的MIAW

   我们经常想要创建一个具有以下属性的MIAW(Movie In A Window,窗口中的影片):

   1. 没有标准的标题栏。

   2. 在以窗口模式运行的放映机中,能够被用户在舞台范围内外自由拖动。

   看起来好像很容易,可是许多开发者发现,即使给windowType指定了有效值,最终的MIAW仍然带有标题栏,且仅能在舞台范围内拖动,或者虽然没有标题栏,但位于舞台范围内,且根本无法拖动。作为一个Director开发者,你也许根本不需要这些功能(因此也不需要知道windowType究竟该如何取值),你也许一直苦于无法算出给windowType赋予何值才能够得到满意的结果。本文阐述的技巧很好地解决了这一问题,将其用在Director程序中非常容易。此外,这项技巧已经通过测试,在MAC和PC上都能够工作的很好。

   做法很简单,只需两步:

   1. 选择合适的windowType值,此处必须令windowType=2。

   2. 给一个“伪造”的标题栏添加Lingo代码,以便鼠标能够随意拖动这个MIAW。

   为什么在这个MIAW中,必须令windowType=2呢?简单地说,是因为一个取值为2的“窗口”实际上根本就不是窗口,而是一个对话框。真正的窗口(windowType取其他的有效值)必须在当前舞台环境的父窗口边界内,这不是Director的特性,这是所有视窗操作系统的一个基本概念。通过令windowType=2,实际上创建了一个“对话框中的影片”,而对话框能够存在于桌面上的任何地方,且与创建它的主窗口的大小和位置都没有关系。因此只要能够在预期的位置用Lingo在一个对话框(windowType=2)中打开影片,那么随后就可以在运行时用Lingo改变它的位置。

   首先,在MIAW的“热点”上添加相应的Lingo代码,以便当鼠标按下时跟踪其位置,并相应地调整窗口(实际上是对话框)的rect值。

   将下面的代码粘贴到Script Window中,并确保将其设置成Movie Script。

on DragWindow dWhichMIAW
tell the stage
set mPt to point ( the mouseH , the mouseV )
set origRect to the rect of dWhichMIAW
repeat while the mouseDown
set newPt to point ( the mouseH , the mouseV )
set deltaPt to newPt - mPt
set newRect to offset (origRect, getAt (deltaPt, 1 ), ?
getAt (deltaPt, 2 ))
set the rect of dWhichMIAW to newRect
tell dWhichMIAW to updateStage
updateStage
end repeat
end tell
end

   正如你看到的那样,这个带有参数(dWhichMIAW)的剧本被MIAW引用,同时根据传递的参数值运行。可是从哪里调用剧本呢?很简单,你的MIAW看起来可能像下图那样,注意我是如何使用一个Director中的Shape演员来“伪造”标题栏的。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/shejiruanjian/)
   其次,将下面的剧本放在“伪造”的标题栏上。

global gVideoPlayer
- th(图老师整理)e global reference to your MIAW

on mouseDown
repeat while the mouseDown
tell the stage to DragWindow(gVideoPlayer)
end repeat
end

   这就是要做的一切。当你打开这个MIAW时,没有标题栏,点击“伪造的标题栏”能够在屏幕上任意拖动MIAW而不受舞台尺寸和边界的限制。

   虽然这项技巧很简单,但在Director开发中,确实为定制能够随意拖动的影片打开了创造性的大门。

来源:https://www.tulaoshi.com/n/20160318/1888535.html

延伸阅读
标签: 炒菜
结义小炒 1、制揪片:将白面、玉米面倒入盆中,揉成面团(水温:夏凉,春秋温),将面团揉匀揉光,盖温布稍饧,面团上案板用擀面杖擀成0.5厘米的厚的面片,切成5厘米宽的条,然后左手拿一块面,用右手的拇指和食指把面揪成指肚大小的片,直接投入沸水锅中煮熟捞出待用; 2、芥兰片、木耳片、红腰豆用开水氽熟待用; 3、锅上火加油,待油四...
标签: 猪血 牛肚 白菜
毛血旺 1.锅内下油开中火将郫县豆瓣,姜,蒜,用小火煸炒香,加高汤熬制后,然后放入冰糖,鸡精,开大火煮开。 2.莴笋叶稍微在锅里烫一下马上捞起,放入大碗里打底。 2.将鸭血,百叶切片,飞水,和黄豆芽加入熬好的汤里,烧开后装入打好底大汤盆里,撒入葱花。 3.将色拉油烧热,放入花椒和辣椒,炝出香味,浇在上面就好了。 毛血旺 ...
三色小炒 1、黄瓜、红肠均切片。 2、鸡蛋打散,加少许盐,搅匀入油锅炒出。 3、油烧5成热,撒葱花爆香,放黄瓜翻炒。 4、黄瓜见软时调一勺蚝油,撒少许盐,加一勺水炒至略软踏方至最好。 5、加红肠和炒好的鸡蛋,翻匀出锅。 小诀窍 红肠可以说是家庭常备的好东西,有时图省事了就切个肠,味道还是很不错的。 我用的是蒜蓉肠,不...
标签: 爆炒
渔乡小炒 1、莲子去芯,鲜木耳盐水煮过漂净; 2、油锅下原料合炒,简单调味。 小诀窍 调味要清淡,各种原料本味均可保持。 结义小炒 1、制揪片:将白面、玉米面倒入盆中,揉成面团(水温:夏凉,春秋温),将面团揉匀揉光,盖温布稍饧,面团上案板用擀面杖擀成0.5厘米的厚的面片,切成5厘米宽的条,然后左手拿一块面,用右手的拇...
标签: 网店
淘宝定制的可以退货吗 如果买家购买的时候,宝贝页面显示卖家承诺“7天无理由退货”,买家在收到商品要求7天无理由退货的时候,卖家说商品是根据买家的需求特殊定制的,故而不支持退货? 当买卖双方出现了争议的时候,面对这样的纠纷,卖家们知道该怎么解决吗? 淘宝定制产品可以退货吗?如果买家购买的商品是定制的,但是卖家宝...

经验教程

473

收藏

71
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部