库: 主持人 - 主持人 fileicon - 文件
信息: 主机是一个容器,它有一个掩码,我将使用它来拥有许多被称为文件的子对象。稍后在代码中我希望有一个removeChild(Host),所以当我激活它时,它将删除Host,从而删除所有文件。干净的石板。
文件本身只是一个对象,我的其余代码工作正常,但无论何时将它们添加到主机,它都不会工作...... 显然,在这里您看到Host实际上是在hostSetup函数中创建的,文件将在addfiles函数中创建,但我需要在两者之间进行通信以将文件添加到主机中。 -Re写了这篇文章,希望能让它更容易理解。
(抱歉,它让你感到困惑)
function hostSetup()
{
addChild(Host);
addChild(HostMask);
}
function addFiles()
{
Host.addChild(file);
}
答案 0 :(得分:0)
变量Host
是函数initHost()
中的局部变量。在功能之外是未知的。
要使其他函数addFiles()
可用,您必须在函数外声明变量。
来自这个
function initHost()
{
var Host:host = new host();
到这个
var Host:host;
function initHost()
{
Host = new host();
然后您应该能够将子项添加到该容器中:
Host.addChild(file);
当然,在执行此操作之前,必须确保执行函数initHost()
以确保对象存在。
按照惯例,变量名称应以小写字母开头,类名(链接名称)应以大写字母开头。我强烈建议遵循该惯例。理想情况下,您的代码看起来像这样:
var host:Host;
function initHost()
{
host = new Host();
和
host.addChild(...);