【发布时间】:2022-03-25 03:03:03
【问题描述】:
我是 Swift 可可编程的新手,我正在尝试构建一个金融程序。我几乎完成了,但我遇到了以下问题。我正在尝试从带有 textlabel 前后的情节提要打印多页 NStableView。如果 tableView 适合一页,我可以毫无问题地打印 NSView。如果超过一页,则仅显示第一页。我没有找到如何扩展 Tableview。
我在没有有效解决方案的情况下搜索了所有帖子。
我可以在没有 NSView 的情况下打印 NSTableView 本身,它将显示所有页面。但当然,它不会打印伴随的文本标签,也不会打印 TableheaderView。
我设法调整了一个示例,让我打印带有标题的整个表格,但没有文本标签。它逐个单元格地重建表格以进行打印。
我还找到了一个更有希望的示例,我可以在其中使用 stackView 打印所有我需要的内容。
2个问题:
- stackView 内的 tableView 打印正常,但它想要调整大小或剪切最后一列。我不得不部分成功地使用帧大小和其他选项。
- 我曾尝试在其 stackView 中单独打印 TableHeaderView,但效果不佳。因此,我在情节提要中绘制了与 tableView 标题匹配的水平 StackView 中的一系列标签。情节提要中的一切看起来都很好,但程序会在打印前调整每个标签的大小。找不到解决问题的方法。
任何建议将不胜感激。 SwiftUI 更容易使用吗?我必须将我的操作系统更新到 10.15...
-
您所说的“前后带有文本标签”是什么意思?第一页顶部和最后一页底部的标签?
-
可以关闭表格列的自动调整大小。
-
是的,我在表格前后都有文本标签。我刚刚发现在情节提要中有问题的元素上添加宽度约束解决了这个问题。所以基本上,我可以用 stackView 打印我想要的东西。不过,我认为我可以只打印 NSView 并展开 NSTableView 以显示所有行。
-
调整视图大小以展开表格视图。堆栈视图是否会自动扩展和调整大小?在多页上打印表格视图并在每页上打印其标题需要一些复杂的代码。支持缩放、页面大小、方向和其他设置增加了复杂性。
-
调整 NSView 的大小不会扩展 TableView。我已经读过停用 scrollView 可能会完成这项工作,但我没有成功。单独打印 NSTableView 或在 stackView 中工作正常,但 HeaderView
标签: swift cocoa printing nstableview nsstackview