2012-03-13 15 views
1

関数ハンドルの値を取得する方法:私は値 を返し、function_2から、私は私が試したそれを を使用するfunction_1の値を取得したいfunction_1必要があり

function ret = getValue(arg) 

      ret = find(arg,'toto'); 

    end 

function selectValue(arg,val) 
      f = @getValue(arg); 
      switch val 
       case 'tata' 
        f.select(1) 
       case 'titi' 
        f.select(0); 
      end 
end 

しかししようとしたとき、私はエラーを得たのf.select(1) 一般的に、返された関数の値を別の関数で使用したい場合、どうすればよいでしょうか? 誰かを助けることができますか? [email protected](arg)は機能ではなく、戻り値のハンドルにハンドルを返すため

おかげで、

+0

もし関数の価値を知りたければ、 'f.select(1)'の代わりに 'f(1)'を使ってみてください。 –

+0

私は関数getValueの値を取得したい値を選択したい(getValue関数はポップアップメニューを返す) – lola

+0

はf = @getValue(arg);正しい? – lola

答えて

1

あなたはエラーを取得しています。あなたがしなければならないことは、あなたが行動したいオブジェクトのハンドルを返してから、そのハンドル(単に数字です)をfで使用することです。残念ながら、これを簡単な方法で達成することはできませんが、ラッパークラスとhgetetを使用する必要があります。これをチェックしてください:Can properties of an object handle returned from a function be used without first assigning to a temporary variable?

+0

を返します。定義済みの関数... – lola

+0

コメントはコードと同じくらい曖昧です。上記を編集して正確なコードを入力して、正確な回答を得てください。 –

関連する問題