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