6

1 つの pushButton だけで構成される非常に単純な GUI を実装しようとしています。STARTをレーベルにするだけで始めてほしい。次に押すと、STOP に変わります。ユーザーが最初にボタンをクリックすると、コールバックはブール値を true に設定し、ラベルを変更します。ボタンをもう一度クリックすると、ブール値が false に変更され、GUI が閉じます。

MATLAB でこのような単純な GUI を作成する方法については何も見つかりません。GUIDE ツールは私には意味がなく、役に立たないコードが大量に生成されるようです。ここに見られるように、Matlab ボタンは jButtons のラッパーです

4

1 に答える 1

4

GUIDE は非常に単純です。自動化されたツールがすべてのコールバックのスタブを生成するため、後はコールバックが実行されるたびに実行されるコードを入力するだけです。プログラムで GUI を作成したい場合は、次のように必要なボタンを作成できます。

%# create GUI figure - could set plenty of options here, of course
guiFig = figure;

%# create callback that stores the state in UserData, and picks from
%# one of two choices
choices = {'start','stop'};
cbFunc = @(hObject,eventdata)set(hObject,'UserData',~get(hObject,'UserData'),...
          'string',choices{1+get(hObject,'UserData')});

%# create the button
uicontrol('parent',guiFig,'style','pushbutton',...
          'string','start','callback',cbFunc,'UserData',true,...
          'units','normalized','position',[0.4 0.4 0.2 0.2])
于 2013-01-04T01:55:16.493 に答える