gpt4 book ai didi

objective-c - NSTableView 中的鼠标悬停

转载 作者:行者123 更新时间:2023-12-03 17:18:20 26 4
gpt4 key购买 nike

我在使用 NSTableView 创建鼠标悬停功能时遇到问题。这个想法是(如果在首选项中选择了该功能)将鼠标指针放置在 NSTabelView 中的特定行上方将显示一个小的弹出窗口,其中包含有关该特定行中的条目的附加信息。效果不应立即出现(例如,将鼠标悬停在按钮上时突出显示该按钮),而应延迟几秒钟。

到目前为止,我已经使用工具提示委托(delegate)方法实现了此功能,但是这不允许自定义窗口,并且如果需要显示超过 1-3 行信息,则效果不佳(布局方面)。

在 Hillegass 的书中,建议使用 mouseEntered/mouseExited 方法进行翻转,但据我所知,这适用于窗口的预定义区域,而不是 TableView 中的行。

有人有什么建议吗?

格雷戈·托马塞维奇,瑞典

最佳答案

使用 -mouseEntered: 和 -mouseExited:,您的方向是正确的。

查看 NSView 的 -addTrackingRect:owner:userData:assumeInside: 和 -removeTrackingRect: 方法。您可以将 tableView 设置为在 tableView 的内容发生更改时为其中的每一行创建跟踪矩形,或者在调用 -tile 或其他与布局相关的方法时在整个 tableView 上设置/更新一个跟踪区域。

关于objective-c - NSTableView 中的鼠标悬停,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/464677/

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