NSTextFieldは、ユーザーが入力すると大きくなり、バックスペースが押されると小さくなります。
私が見つけたのは[textFieldsizeToFit]だけですが、これは動的には実行されません。サイズ変更は1回限りです。設定する必要のある物件などはありますか?
ps水平方向にサイズ変更するだけで済みます(1行のテキスト)。
NSTextFieldは、ユーザーが入力すると大きくなり、バックスペースが押されると小さくなります。
私が見つけたのは[textFieldsizeToFit]だけですが、これは動的には実行されません。サイズ変更は1回限りです。設定する必要のある物件などはありますか?
ps水平方向にサイズ変更するだけで済みます(1行のテキスト)。
リチャードが言ったこと。ただし、テキストフィールドのサイズをどの程度変更するかを知る必要があります。この値を取得するには、NSTextFieldのレイアウトマネージャーを使用して、すべてのグリフの範囲でboundingRectForGlyphRange:inTextContainer:のようなものを呼び出します。これにより、すべてのテキストの境界となる長方形の寸法がわかります。これらの寸法を取得し、NSTextFieldコンテンツの幅と高さに設定します。
を実装するNSTextFieldにデリゲートを設定します
- (void)controlTextDidChange:(NSNotification *)aNotification
デリゲートが呼び出されるたびに、上記のアイデアに従ってコントロールのサイズを変更します。