私は現在、私のmatlab最終プロジェクトの学校で働いています。私はかなりプログラミングに興味があると思っていますが、Matlabにはあまりにも多くの奇妙なものがあります。Matlab GUI:変数を使用して既存のオブジェクトハンドルを参照する
基本的な質問(答えを見つけた後、これを実現)! guiハンドルオブジェクトの呼び出しで変数を使用する方法 値の代わりに変数の名前を使用しないでください。言い換えれば
:
マイプロジェクトは簡単な表現を構築している(私はそれが私が尋ねたのではないでしょう、この単純なものでした知っていたなら)は、フィールド名で変数を使用します昔の「戦艦」ゲームの
私の問題:私は現在、船の部分に5つのオブジェクト(軸)を持っています。それらは、一度に1つずつ選択され、別の場所(グリッド)に移動されます。 私はボタンをクリックした後にセットピクセル位置を使用して各オブジェクトを移動することができます。
は今ボタンクリックの下で、私は.. 'shipAircraftCarrier' 言い換えれば、この
function btnPlaceShip_Callback(hObject, eventdata, handles)
%Store the current selected ship(passed from an onclick to a label)
ship = get(handles.lblSelectedShip,'string');
%I have tried everything I could think of, but basically I want to achieve the
%following
setpixelposition(handles.ship, [0 250 50 250])
%where the variable 'ship' contains the name of the object.
のようなもの、VAR船を =持っている、と
setpixelposition(handles.shipAircraftCarrier, [0 250 50 250])
作品!(示された特定の船の位置を設定します)。ただし、変数の出荷を使用すると、matlabはその文字列を文字どおり取りますが、その値ではありません。代わりに変数を使用するのが非常に便利です!
誰かが解決策をお持ちの場合、私は感謝します。私はWebを精査したが、Matlab GUIの基本的な理解が不足している可能性があります.Matlabのヘルプドキュメントは非常に説明的ではなく、あまり役に立ちません。
ありがとうございます。まもなくこれを試してみます。私はこれが答えられたのを見る前に、一日中さまざまなことを試みていました!しかし、私は多くを学んだ - 私は最終的にどのようにMATLABは、このGUIのものすべてを整理して理解しています!私は自動的に生成されたコードを理解していなかったのですべてが混乱していたと思うし、それを把握するのに時間がかかりました(つまり、「ハンドル」は単なる構造配列です! – mtotho