作者wearytolove (夺真书生A.W.)
站内Flash
标题[心得] 用VB6解决flash存档问题
时间Thu Nov 1 11:20:12 2007
使用软体: VB6 , Flash MX
目的:
我要做一个flash的调查表,我希望每个使用者输入资料以後,可以以他资料为名
开一个txt档,然後使用者之候选的选项都会被存在该txt档中以利整理
困难:Flash是有名的没有存档功能,在flash 5以前,可以用fscommand外部呼叫
cmd,由cmd的DOS指令去新增txt档并储存修改之,可是因为这功能被人拿去做病毒..
所以在flash MX以後就把这功能给缩减成很小了
flash可开出cmd,但无法输入指令进去,使用者还得自行输入
有人说可以用flash MX的SharedObject,不过我的MX里找不到 囧>
而且这个东西不太直观..好难学,外加又只能存100kB(好像可以变大)
然後也有人说可以用MMSave这指令, MMSave(变数,路径)
可是後来发现...这功能只用在test时才有用,输出output後就不能用了
原因可能是这个MMSave只是为了debug而存在,很像trace()
XML...我太弱了不会写T____T
相关文章在这
fscommand
http://0rz.tw/3f3dV
shareobject
http://blog.xuite.net/ben19770209/ASBeginner/3514766
MMSave
http://0rz.tw/653fB
存档这种东西,在VB或C中是超简单的,可是用这两个写漂亮的图太困难...
VB又是比较浅显易懂的物件导向,所以我就使用他叫flash试试
解决:
在经历了一堆挫败之後,我发现这个网页
http://www.adobe.com/devnet/flash/articles/flash_vb.pdf
这个adobe官方网页,很详细的说明了存档的方法,
使不会VB如我也可以在一个晚上就学会我的要求~
首先,去抓下VB6...(谜)
然後呢,新开一个档案,并且在左边的工具列中按右键新增component
里面有一个Shockwave Flash,按确定,工具列上会多一个东西
把这东西拉进Form里,会出现一方格,这方格就是你之後call flash的大小~
接着,点这个东西,在右边有一个(Name) 把他里面改成呼叫swf在这VB的名称
我叫他test1好了
点两下form,输入以下程式码
Private Sub Form_Load() //程式一开启就做的事
Call test1.LoadMovie(0, "C:\flash\TEST.swf") //後面是路径名,输入我要的swf
End Sub
此时flash就会被抓到VB里播放罗!
再来,flash要怎麽把资讯传给VB咧?
用fscommand(x,y) !
当flash在VB中播放时,fscommand里可以传两个值给VB,
Vb使用方法是输入程式码
Private Sub test_FSCommand(ByVal command As String, ByVal args As String)
此时就会定义你在flash中的x跟y,在VB中会变成变数command与args
当VB得到变数以後,就可以做很多事啦..嘿嘿嘿
就我需要的功能来说,我flash表单第一页是给使用者输入班级座号姓名,用这个
来命名新的txt档,然後之後会有选项给他们选yes or NO,再把这存进txt档中
所以程式码如下
Private Sub forac_FSCommand(ByVal command As String, ByVal args As String)
Open command & ".txt" For Append As #1 //以command命名的txt,找不到就新创,
//Append是指说加在後面,假如是Output
Print #1, args //代表复写,#1是这txt的暂时变数
Close
End Sub
接着把这VB发布成exe档就完成罗~~~
花了14天,我从不会flash不会VB变成这样...虽然有点累但学到很多东西说:)
flash真的很好玩XD
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.251.57
1F:推 ClubT:可以转VB板 11/01 16:55