gpt4 book ai didi

macos - 在 NSView 中处理 CMD+

转载 作者:行者123 更新时间:2023-12-03 17:53:55 24 4
gpt4 key购买 nike

我试图在我的 NSView 中捕获 CMD+ 和 CMD- 键盘操作 - 以增大和减小某些自定义文本的字体大小。由于各种原因,我不能简单地使用 NSTextView。有谁知道处理这个问题的正确方法吗?

据我了解,它们是菜单项的关键等效项。我可以通过实现changeFont:来“启用”菜单项,并且我可以通过实现performKeyEquivalent:来捕获按键,但这似乎有点像黑客。另外,当 ChangeFont 确实被调用时,不清楚我如何解释它被 CMD+/- 调用的事实,因为它只是向我发送一个 NSFontManager 。让我怀疑我是否处理了错误的消息?

提前致谢。

最佳答案

Gerd(参见上面的评论)让我排序。在我的changeFont处理程序中,我创建了一个大小为10的临时字体,然后将其传递回字体管理器并检查返回字体的大小。如果它更大,则按下 CMD+,如果它更小,则按下 CMD-。

- (void)changeFont:(id)sender
{
NSFontManager* fm = sender;

NSFont* fntBefore = [NSFont systemFontOfSize:10];
NSFont* fntAfter = [fm convertFont:fntBefore];

CGFloat delta = fntAfter.pointSize - fntBefore.pointSize;
}

关于macos - 在 NSView 中处理 CMD+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16936536/

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