gpt4 book ai didi

swift - 从 NSButton 操作调用表情符号和符号选择器

转载 作者:搜寻专家 更新时间:2023-10-31 22:45:36 24 4
gpt4 key购买 nike

我是 Swift 的新手,目前正在为 macOS 开发一个小型消息传递应用程序。基本应用程序已完成,但我正在尝试添加表情符号选择器。

我想添加一个按钮来打开“表情符号和符号”窗口。这会在启动应用程序时自动添加到“编辑”菜单,但我希望通过按下 NSButton(就像在 native Mac Messages 应用程序中一样)让它弹出。

有没有办法调用系统函数来显示表情符号选择器,或者有办法模拟键盘快捷键(ctrl+cmd+space)?如果是这样,我需要采取哪些步骤来实现它?

最佳答案

多亏了使用键盘快捷键的建议。

下面是我使用的代码。我在模拟按下两个修饰键时遇到了问题,因此解决方案是创建自定义 CGEventFlags 项。

// Setup a custom CGEventFlags Item with value of .MaskControl and .MaskCommand
let commandControlMask = (CGEventFlags.MaskCommand.rawValue | CGEventFlags.MaskControl.rawValue)
let commandControlMaskFlags = CGEventFlags(rawValue: commandControlMask)!

// Press Space key once
let space = CGEventSourceCreate(.HIDSystemState)
let keyDown = CGEventCreateKeyboardEvent(space, 49 as CGKeyCode, true)
CGEventSetFlags(keyDown, commandControlMaskFlags)
CGEventPost(.CGHIDEventTap, keyDown)
let keyUp = CGEventCreateKeyboardEvent(space, 49 as CGKeyCode, false)
CGEventSetFlags(keyUp, commandControlMaskFlags)
CGEventPost(.CGHIDEventTap, keyUp)

关于swift - 从 NSButton 操作调用表情符号和符号选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38611925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com