问题标签 [nstableheadercell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
545 浏览

cocoa - NSTableHeaderCell 检测鼠标按下?

我正在尝试自定义 aNSTableHeaderCell以检测鼠标点击。在过去,我使用过诸如NSTrackingArea或覆盖mouseDown事件之类的东西,例如:

这些方法似乎不能在 a 上正常工作,NSTableHeaderCell因为它是一个单元格而不是一个视图。

有人对检测单元格上的鼠标事件有任何建议吗?具体来说,我想捕捉第一次点击(连同它的位置)。

0 投票
0 回答
613 浏览

objective-c - 如何将子视图添加到 NSTableHeaderCell?

我一直在尝试自定义NSTableViews 并且NSTableHeaderView现在NSTableHeaderCell已经开始。

我有一个简单的需求。NSTableHeaderCell我想将我的自定义视图种植到每个。它仅由两个按钮组成。

这是一些代码:

我有一个NSTableHeaderCell类别,它简单地改变背景颜色,有和没有高亮。

接下来,我有一个NSViewController子类,名为NSTableHeaderViewController. 这有一个 xib,我将按钮放入其中。

最后,在我的主视图中,我设置了NSTableHeaderView指定的自定义高度,并将我的按钮视图添加到它。

这部分按预期工作,创建我的 120 像素高的表格标题,蓝色背景,绿色突出显示。但是,它只会NSTableHeaderViewControlelr在 0、0 的标题中添加我的按钮视图一次。

我有点期待这一点,但是标题视图和标题单元格之间有什么区别?

另外,如果我希望我的按钮视图位于每个单元格中,如何将其添加到每个单元格中?

谢谢。

0 投票
1 回答
1344 浏览

cocoa - 如何在基于视图的 NSTableView 中设置 NSTableColumn 的列名?

我以编程方式创建了一个 NSTableView 并添加了一个列(NSTableColumn 的一个实例)。如何设置此列的名称(默认为“字段”)?在 NSTableColumn 有一个带有签名的方法

但是“[t]his 方法仅对基于单元格的表格视图有效”,并且我正在使用基于视图的表格视图。

NSTableView 本身包含一个 NSTableHeaderView 的实例,其中包含一个 NSTableHeaderCell 的实例。NSTableHeaderCell 是 NSTextFieldCell 的子类,看起来不错,因为它有一个 setString 方法。但我无法访问 NSTableHeaderCell!那么如何设置列名呢?我认为这样做是微不足道的:毕竟,能够在表格视图中设置列名几乎是能够使用表格视图做的最重要的事情,但是经过数小时的搜索我还没有找到关于如何做到这一点的单一线索。

0 投票
1 回答
534 浏览

swift - Swift:无法将 NSTableHeaderCell 添加到 NSTableView

所以我正在以编程方式绘制一个 NSTableView,但是,我无法绘制标题。有任何想法吗?

0 投票
1 回答
261 浏览

objective-c - 尝试生成透明 NSTableView 标头时 NSTableHeaderView 和 NSTableHeaderCell 的消息流问题

问题:我正在尝试创建一个自定义透明TableView页眉,并且我已经创建了 and 的子类,NSTableHeaderView并且在子类中NSTableHeaderCell覆盖了-drawWithFrame:inViewand 。这些方法按预期工作,但仅在第一次绘制表格列标题时。然而,在用户单击表头后,它会以白色背景重新绘制。具体来说,这里是自定义方法实现:-drawInteriorWithFrame:inViewNSTableHeaderCell

首次绘制表格视图标题时,它 具有预期的透明背景。 但是,单击标题后,它会被 重新绘制为具有白色背景。

据我所知,点击表格视图标题后

当需要绘制头部时仍然调用。然而,

不是。似乎另一个类正在单元格文本下方绘制一个白色视图。

我已经查看了NSTableHeaderCellNSTableHeaderView类描述以及它们的所有描述,superclasses但我无法弄清楚为什么要绘制白色背景。我显然错过了一些基本的东西。

问题:是什么导致绘制白色视图?

0 投票
0 回答
232 浏览

swift - 斯威夫特:NSTableHeaderCell 中的 NSPopUpButtonCell

我一生都无法弄清楚如何让 NSPopUpButtonCell 在 NSTableHeaderCell 中工作。我已经尝试在这里实现解决方案:使用 NSPopUpButtonCell 时在 NSTableView 中获取重复的标题按钮单元格,但似乎某些方法在 Swift 中不可用,特别是在 headerCell 上执行 ClickWithFrame。

我设法让弹出按钮像这样在标题中绘制:

每当我尝试单击按钮时,它都会选择标题单元格。如何获取它以便我的点击注册在按钮而不是标题上?

0 投票
2 回答
2816 浏览

macos - 如何在 macOS 10.12+ 上自定义 NSTableView 标头?

MacOS 10.12+、Xcode 8+、Swift 3:

我想以编程方式自定义 NSTableView 标头的字体和绘图。我知道对此有较早的问题,但我今天找不到任何有效的方法。

例如,我尝试继承 NSTableHeaderCell 来设置自定义字体:

然后在我的表格视图中使用该子类:

我在控制台中看到消息“MyHeaderCell 正在绘制”,但表格标题的字体没有改变。

0 投票
1 回答
129 浏览

arrays - Swift 5 - Firebase - 从 firebase 中的数据创建数组

我正在尝试从我在 firebase 中的数据创建一个数组,以便我可以将它作为标题加载到我的 tableview 中。当我将信息硬编码在代码中的数组中时,我了解如何将数据放入节标题中,但是当数据在 Firebase 中并且我想将其放入数组然后把它放在标题中。希望这是有道理的。

我的 Firebase 数据是

我从 firebase 获取数据的功能是:

我的数据模型是:

这是我的数据源和委托方法的扩展