【问题标题】:Dialog box - does not have a constructor对话框 - 没有构造函数
【发布时间】:2017-01-26 15:38:56
【问题描述】:

我在尝试创建对话框时间歇性地成功。代码有效。

try
{
    // Create an empty dialog window near the upper left of the screen
    var dlg = new Window("dialog", "Alert Box Builder");
    dlg.frameLocation = [100,100];
    dlg.show();
}
catch(e)
{
    alert(e);
}

有时它有效,有时我得到错误:

Error 22:Window does not have a constructor

我不知道为什么。删除 Photoshop 首选项和/或以管理员身份运行似乎不起作用(在 Win7 上运行 CC)。

【问题讨论】:

    标签: javascript windows dialog photoshop-script


    【解决方案1】:

    我无法对此提供任何解释,除了有时 Photoshop 会损坏首选项文件,这会导致创建用户界面元素时出现更多问题。当然,我在 Windows 上遇到过这种情况。最好的办法是摆脱首选项文件。这是一个很大的痛苦,因为它会将 Photoshop 设置回其默认设置。因此,在删除首选项文件之前,请对首选项文件进行快照,以及是否可以将工作区保存为默认模式以外的其他内容。

    首选项文件在 C:\YOURUSERNAME\AppData\Roaming\Adobe\Photoshop SCX 中作为 Adob​​e Photoshop SCX Prefs.psp 找到

    其中 CSX 是 Photoshop 的版本号

    • 删除首选项文件。
    • 重新启动 Photoshop(它将创建一个新的首选项文件)
    • 关闭 Photoshop。
    • 将您的首选项备份到新创建的首选项上。
    • 重新启动 Photoshop。

    显而易见的做法是跳过第一阶段,只需复制带有备份的首选项文件即可。这不会强制 Photoshop 生成新的首选项,并且 Windows 构造函数错误将持续存在。

    我可以建议您将代码修改为类似

    catch(e)
    {
        //alert(e);
       alert("Photoshop was unable to create User Interface"); 
    }
    

    这样您就会知道这是一个窗口构造错误,而不仅仅是代码中的错误。恐怕真的没办法了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 2019-11-22
      • 2018-05-30
      • 1970-01-01
      相关资源
      最近更新 更多