我不知道为什么在AS3中出现了“未定义属性块的访问”中的错误。
我跟着一个教程复制了代码,
function mainLoop (e:Event) {
for (var i = 0; i < numChildren; i++){
if (getChildAt(i) is Block)
{
var bb = getChildAt(i) as Block;
if (bb.hitTestPoint(mouseX, mouseY))
{
trace("hit");
}
}
}
}也许是缺了进口品?虽然FlashDevelop没有像它有时那样自动添加,所以我有点不知所措
发布于 2014-04-07 18:36:18
您应该有Block的类定义。它可以作为.swc库的一部分导出,也可以在代码中定义。如果没有Block类的定义,就会出现错误。
此外,您还可以改进主循环,不应该使用getChildAt执行多次相同的查找,操作is和as也可以优化:
function mainLoop(e:Event) {
var block:Block, len:int = numChildren, i:int;
for (i = 0; i < len; i++) {
block = getChildAt(i) as Block;
if (block != null) {
if (block.hitTestPoint(mouseX, mouseY)) {
trace("hit");
}
}
}
}https://stackoverflow.com/questions/22919919
复制相似问题