问题标签 [applescript-objc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - “无法获取文档”错误 - Javascript 和 Applescript
我的 Applescript 在 Safari 中(偶尔)遇到此错误。
我认为这是因为页面没有加载,但我有一个 Javascript 来检查“完成”,然后再继续,还有一个 try 语句可以在出错时再延迟一秒。
尽管如此,我仍然遇到这个问题。这似乎是相当随机的。
有什么建议么?
Applescript(整个 Tell 语句):
objective-c - 超时在 NSAppleScript 中无效
我有一个简单的苹果脚本如下:
这个脚本执行得很好,但是当 InDesign 显示Save Confirm Dialog时,如果我执行脚本,它会等待 2 分钟(默认苹果脚本超时)。
保存确认对话框
因此我指定超时如下:
现在,如果我在AppleScript 编辑器中执行上述脚本,每件事都符合我的预期:
但是当我通过NSAppleScript以编程方式执行相同的脚本时,超时没有任何影响,程序等待 2 分钟:
附加描述:当我的可可代码正在执行时(当我的应用程序被阻止时)如果我在AppleScript 编辑器
中执行相同的脚本,那么我的可可代码在 2 分钟超时之前被解除阻止。似乎我的应用程序在苹果脚本超时行之前被阻止 [?]如何执行与AppleScript Editor相同的苹果脚本?任何帮助,将不胜感激。
objective-c - 努力从 ApplescriptObjC 中的 Objective-C 路径打开文件
我是一位经验丰富的 Cocoa 程序员和 Applescript 新手。我需要编写一个基于 Microsoft 的报告生成器。我从 Applescript 桥开始,基本上用 Word 碰壁了。我现在正在尝试使用 ApplescriptObjC,而且我正在苦苦挣扎。
当用Objective-C编写的方法报告文件路径时,我什至陷入了打开文件的愚蠢步骤。Objective-C 类代码非常简单(作为一个人为的例子):
旁注:当前目录不是构建的应用程序目录。这是我尝试使用它的方法之一:
这个得到这个错误:
我尝试了很多变体,尽管尝试了很多小时,但我仍然无法让 Word 打开我的文件。
我究竟做错了什么?
applescript - Applescript:从 ApplescriptObjC 询问 Finder?
这个单行 Applescript 在我的 Mac 上运行良好:
然而,它在一个简单的 ApplescriptObjC 项目中失败了:
我得到的错误是:
我错过了什么?
xcode - 如何在 Xcode 中为自定义 Automator Action 项目连接按钮的 Sent Action
我在 Xcode 的 Interface Builder 中,创建一个 Cocoa-Applescript 自定义 Automator Action。我在界面中有一个 Button 和一个 ComboBox 菜单。当用户单击按钮时,我想填充组合框菜单的内容值。我创建了
applescript 文件中的处理程序,但是当我 ctrl 从按钮拖动到文件的所有者时,文件的所有者没有突出显示让我放弃连接。我期望它放下并让我选择 buttonSentAction_ 处理程序来接收发送的操作。如果我右键单击 File's Owner,我在 Applescript 控制器文件中创建的接收到的操作处理程序不会显示出来。(注意,我仍然不确定在该处理程序中填充 ComboBox 菜单的正确行。)
我可以在 macosxautomation.com 的“FM to Named Text Boxes”示例 Automator Action 项目中看到,在 IB 中有一个按钮,您可以在 Bindings Inspector 中看到该按钮的发送操作实际上已连接到文件的所有者,并且applescript 文件具有匹配的处理程序。另外,文件所有者的控制器默认设置为applescript文件。显然,我错过了一些关于在 Automator Action Project 中连接发送动作的具体内容。有什么帮助吗?
objective-c - 在自定义 Automator 操作中保存用户弹出选择
使用 Xcode 5.* 进行 cocoa-applescript automator 操作。界面是一个简单的弹出菜单,使用以下插座填充:
当操作在工作流(实际上是服务)中使用时,我希望下次运行它并显示操作对话框(我将选择“选项:运行时显示”),我希望弹出菜单更改选择到最后一个被选中的。现在,默认的第一个项目显示,即使上次运行时,用户在弹出菜单中选择了不同的项目。我的想法是我需要使用 Sent Action 处理程序捕获弹出菜单中的更改,然后设置某种类型的默认值。我有一个工作处理程序:
保存这个的正确方法是什么?我是否使用用户默认值?我的绑定当前都通过参数对象/控制器绑定。如果我应该使用用户默认值,有人可以提供设置用户默认值的示例代码,然后如何使用 Cocoa-Applescript 获取和设置新值?
如果我可以获取保存在某处的菜单项的名称字符串,我可以获取该字符串,然后在
在每次显示操作之前调用的处理程序。
感谢您的帮助,乔
xcode - 如何在 Xcode 上使用 Cocoa-Applescript 将代码链接到 GUI
我正在尝试将我的代码链接到我的 GUI。但它不会让我。
目前,我的 GUI 上有一个标签、按钮和一个文本字段。这是我的 GUI 代码:
当我尝试使用 App Delegate 工具时,它不起作用。我将它拖到 GUI 上的部件上,它会形成一条蓝线。但是,“Outlets”下唯一显示的是“Window”
如果我运行该程序,GUI 会出现,但它没有做任何事情,因为代码没有连接!
如何将我的代码连接到我的 GUI?
额外信息:Xcode 5.1
applescript - 如何将输入 __NSArrayM 转换为 Automator Action 项目中的 AppleScript 列表?
自动化操作
我正在制作用于操作文本输入的自定义 Automator 操作。我测试了输入以查看它是什么类,结果是__NSArrayM
. 这意味着我需要以某种方式将此输入转换为 AppleScript 可以理解的列表,并最终转换为字符串。我只需要隔离字符串,然后将其转换回相同的输出对象。
概括:
- 将 __NSArrayM输入转换为 AppleScript 列表对象
- 将 AppleScript 列表对象转换回 __NSArrayM 用于输出
我希望我的自动机看起来像这样:
XCode 中的编码尝试
我的编码尝试如下:
最终代码更新
我想我会将最终代码发布到我的自动化操作中以确保完整性。关键步骤是进行com.apple.cocoa.string
如下图所示的输入和输出。
xcode - 如何在 Cocoa Applescript (ApplescriptObjC) 中对单选按钮进行编程
所以现在我已经在 Xcode 上构建了一个用户界面,并且正在编写 AppleScriptObjC 脚本。
我的界面上有 4 个单选按钮。我如何对它们进行编程?这是我当前的代码:
这是我刚刚尝试但不起作用的代码
xcode - Swift 和 scriptingbridge 对象初始化
我正在尝试编写一个用于快速控制 iTunes 的应用程序。但是在初始化应用程序时返回一个类型为 的对象AnyObject
,而且必须是 iTunesApplication。
该对象不响应 iTunes 的方法和变量。谁知道如何使它工作?
iTunes.h 标头还包含我需要访问但不能访问的类。这些类会导致编译错误,就好像它们不在声明的 iTunes.h 中一样。
为什么这会发生在我身上还不清楚。
通过@class 声明为 iTunes.h 的整个类列表:
@class iTunesPrintSettings, iTunesApplication, iTunesItem, iTunesAirPlayDevice, iTunesArtwork, iTunesEncoder, iTunesEQPreset, iTunesPlaylist, iTunesAudioCDPlaylist, iTunesLibraryPlaylist, iTunesRadioTunerPlaylist, iTunesSource, iTunesTrack, iTunesAudioCDTrack, iTunesFileTrack, iTunesSharedTrack, iTunes URLTrack, iTunesUserPlaylist, iTunesFolderPlaylist, iTunes Visual, iTunes Window, iTunes iTunes Playlist iTunesBrowserWindow;
例如,在 Objective-c 中,您将使用类似这样的方法来获取当前曲目
但是我无法快速工作。