【问题标题】:How to resize NSTextField dynamically?如何动态调整 NSTextField 的大小?
【发布时间】:2012-10-03 09:13:50
【问题描述】:

我希望 NSTextField 在用户键入时变大,在按下退格键等时变小。

我发现的唯一内容是 [textField sizeToFit],但它不会动态运行,它只是调整大小的一种方式。有什么属性或我需要设置的东西吗?

附言我只需要它水平调整大小(单行文本)。

【问题讨论】:

    标签: cocoa resize nstextfield


    【解决方案1】:

    Richard 所说的,除了你需要知道调整文本字段的大小。要获取此值,请使用 NSTextField 的布局管理器并在其上调用类似 boundingRectForGlyphRange:inTextContainer: 的内容,其中包含所有字形。这应该告诉您包围所有文本的矩形的尺寸。获取这些尺寸并将它们设置为 NSTextField 内容的宽度和高度。

    【讨论】:

      【解决方案2】:

      在实现的 NSTextField 上设置一个委托

      - (void)controlTextDidChange:(NSNotification *)aNotification
      

      每次调用委托时,根据您上面的想法调整控件的大小。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-11-03
        • 2023-03-20
        • 1970-01-01
        • 1970-01-01
        • 2012-08-18
        • 2012-10-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多