gpt4 book ai didi

macos - 右键单击 TableViewCell 时显示 popOver

转载 作者:行者123 更新时间:2023-11-30 14:17:08 25 4
gpt4 key购买 nike

我有一个 NSTableView,并且希望在用户右键单击一行时显示 popOver。所以我有这个功能:

 override func rightMouseDown(theEvent: NSEvent) {
super.rightMouseDown(theEvent)
var point: NSPoint = talbeView.convertPoint(theEvent.locationInWindow, fromView: nil)
var row = tableView.rowAtPoint(point)
var rec = tableView.rectOfRow(row)

let storyboard = NSStoryboard(name: "Main", bundle: nil)
let popOverViewController = storyboard!.instantiateControllerWithIdentifier("RightMousPopOver") as! NSViewController
var cell: DocumentCellView = tableView.viewAtColumn(0, row: row, makeIfNecessary: true) as! DocumentCellView
self.presentViewController(popOverViewController, asPopoverRelativeToRect: rec, ofView: cell, preferredEdge: 2, behavior: NSPopoverBehavior.Transient)
}

但是只有当我右键单击第一行时才会出现弹出窗口。我已经调试了该行及其右侧。另外,如果我更改行手册,弹出窗口将显示在右行,但只有当我单击第一行时才再次显示。

我有点困惑。我的代码有什么问题吗?

最佳答案

好吧,我想我找到了答案。 tableView.rectOfRow(row) 为 false。 cell.frame 是获取 NRec 的正确方法

关于macos - 右键单击 TableViewCell 时显示 popOver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30999204/

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