Dym*_*ond 3 apache-flex flash actionscript-3
我试图理解我在网上找到的功能.我知道这个功能是什么,它在你的计算机上获取有关网络摄像头的信息并将其发布在textArea上,
但个别行只是有点困惑.
有帮助吗?
谢谢
private var camera:Camera;
private function list_change(evt:ListEvent):void {
var tList:List = evt.currentTarget as List;
var cameraName:String = tList.selectedIndex.toString();
camera = Camera.getCamera(cameraName);
textArea.text = ObjectUtil.toString(camera);
}
Run Code Online (Sandbox Code Playgroud)
private var camera:Camera;
Run Code Online (Sandbox Code Playgroud)
此行创建类类型Camera的变量.它不会创建变量的实例.
private function list_change(evt:ListEvent):void {
Run Code Online (Sandbox Code Playgroud)
该行是标准函数标题.因为参数是ListEvent,所以我认为这个函数可能被写成一个事件处理程序.由于函数的名称,它最像是在列表上侦听更改事件.
var tList:List = evt.currentTarget as List;
Run Code Online (Sandbox Code Playgroud)
此行创建对调度事件的列表的引用,这导致执行此处理程序.
var cameraName:String = tList.selectedIndex.toString();
Run Code Online (Sandbox Code Playgroud)
此行将selectedIndex转换为字符串.将索引转换为字符串有点奇怪,而不是某些值.但他们这样做的原因似乎是下一行..
camera = Camera.getCamera(cameraName);
Run Code Online (Sandbox Code Playgroud)
这使用了相机变量(在第1行中定义)并实际获取相机的实例.它使用"cameraName",这使我认为调度此更改事件的列表包含系统上可用的摄像机列表.
textArea.text = ObjectUtil.toString(camera);
Run Code Online (Sandbox Code Playgroud)
这会将摄像机对象转换为字符串并将其显示在文本区域中.通常你不会尝试这样做,因为它没有提供有价值的数据.默认对象将字符串显示为[Object object]或类似的东西.也许相机对象具有自定义字符串功能; 我对此没有经验.通常,您希望访问对象的属性以获取有用的信息,而不是在对象本身上尝试此操作.
}
Run Code Online (Sandbox Code Playgroud)
这一行是函数的结尾.open括号位于函数定义的第二行代码中.