簡體   English   中英

如何在帶有swift的macOS上打開特定大小和position的應用程序?

[英]How to open an app with a specific size and position on macOS with swift?

我當前的代碼是:

let task = Process()
task.executableURL = app.executableURL
task.arguments = windows // windows is an array of urls
try? task.run()

我在這里打開 safari 應用程序的一個實例。

使用Process或類似 swift 打開它時,如何設置 safari 應用程序的大小?

這不是您在 Mac 上打開應用程序的方式; 您使用 NSWorkspace 啟動其他應用程序。 對於 web 頁面,您通常不會直接啟動 Safari。 這將創建 Safari 的多個實例,這通常不是用戶所期望的。

如果你想讓 Safari 在它自己的 window 中打開一個 URL,把那個 window 帶到前台,然后把那個 window 放在一個特定的位置,你通常會使用 Apple Events。 例如,以下 AppleScript 將在位置 100,100 打開一個 1024x768 window 例如 com:

tell application "Safari"
    open location "https://google.com"
    set bounds of first window to {100, 100, 1024, 768}
end tell

在應用程序中運行 AppleScript 的最簡單方法是使用 NSAppleScript:

let script = NSAppleScript(source: "...")!
var error: NSDictionary?
script.executeAndReturnError(&error)
if let error = error { ... error handling ... }

AppleScript 是一種微妙而棘手的語言,而且通常沒有很好的文檔記錄。 您可能需要進行一些試驗以確保它的行為完全符合您的要求。 但它非常強大,是控制其他應用程序的核心技術。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM