0

上部に編集可能なテキストフィールドtext1があり、ユーザーが入力できる単純なcocoaアプリケーションと、下部に編集不可能なテキストフィールド/ラベルtext2があります。これは、text1に入力された内容を正確に表示するためのものです。

私の問題は、ユーザーがtext1に入力した後にEnterキーを押したときにのみ、text2を更新できることです。ユーザーがtext1にEnterキーを押さなくても、text2を自動的に更新する方法はありますか?

4

2 に答える 2

1

If you want notifications on every text change, handle controlTextDidChange: in text field's delegate. The delegate can be any object that responds to this message, typically the window's controller is used.

于 2011-10-28T07:33:17.657 に答える
1

Cocoa bindingsの仕事のようですね。あなたは出来る:

  1. モデル クラスでプロパティを宣言NSStringします (単純なケースでは、アプリケーション デリゲートになる可能性があります)。
  2. その文字列プロパティにバインドtext1し、[継続的に値を更新] を選択していることを確認してください。
  3. text2その文字列プロパティにバインドします。

コードを必要とする唯一のステップはステップ 1 です。ステップ 2 と 3 は nib ファイルで直接設定できます。

于 2011-10-28T08:37:21.880 に答える