【问题标题】:Resize Table Column when NSWindow resizesNSWindow 调整大小时调整表列大小
【发布时间】:2016-06-18 05:53:30
【问题描述】:

我正在开发一个使用 NSTableView 的 Cocoa 应用程序。

现在我希望在用户调整窗口大小或最大化窗口时自动调整表格视图中列的宽度,方法是从角落拖动应用程序或单击缩放按钮。

任何帮助将不胜感激。

【问题讨论】:

    标签: macos cocoa nstableview nstablecolumn


    【解决方案1】:

    通过设置约束或设置其自动调整大小掩码,确保您的表格视图本身在窗口调整大小时调整大小。

    然后设置表格的整体列自动调整大小样式。在情节提要或 XIB 中,您可以通过选择表视图(而不是包含它的滚动视图)然后在属性检查器中设置“列大小”弹出窗口来执行此操作。在代码中,您设置表视图的columnAutoresizingStyleNSTableViewColumnAutoresizingStyle 下描述了不同的样式。如果您希望所有列在调整大小期间扩展或收缩,请将其设置为 NSTableViewUniformColumnAutoresizingStyle

    然后根据需要设置每列的自动调整大小行为。

    如果您在 XIB 或情节提要中设置表格,则可以选择列,然后在属性检查器下设置其大小调整行为。

    如果您在代码中创建列,请将每个 NSTableColumnresizingMask 设置为包含您想要的任何调整大小模式位。默认情况下允许用户调整大小和自动调整大小,因此您无需执行任何操作。

    【讨论】:

      【解决方案2】:

      如果调整列大小调整掩码或 tableView 大小调整设置没有任何作用,请确保最后一列实际接触到表格视图的右侧,即使它看起来是。

      【讨论】:

      • 我一辈子都想不通我做错了什么。感谢您解释这个小怪癖。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多