このページ最新ではありませ。をクリックし,英语のの最新版版を参照参照し。
stateflow®チャートチャートチャートチャートチャートチャートグラフィカルユーザーユーザーインターフェイスのモデルモデル化化するする方法方法方法方法方法をををしますます。。。スタンドスタンドスタンドアロンアロンアロンチャートチャートチャートチャートはは,,,,金宝app,,,,,,,,,,,,ををををををををを生成がれいるいる关数を含めててののすべて机能机能使用ししてチャートををプログラミングできますます。。matlabオブジェクトとしてするするするするチャートチャートチャート作成作成を参照しください。
状态流チャートチャート,,そのイベントイベントて,时相演算子时相演算子をすることことことによってによって実行実行実行できます。イベントイベントドリブンドリブンドリブンドリブンおよびおよびおよびおよびタイマードタイマードタイマードタイマードタイマードリブンリブンリブンリブンのののの実行実行実行ワークワークワークフローフローフローフローフローフローフローフローフローフローフロー基とロジック设计にています。
Matlab应用程序设计师ををするはインターフェイスからコールバック关数がチャート内のイベントを。。。。
stateflowチャートで时相演算子とローカルデータユーザーインターフェイスプロパティを制御。。
matlabを使用てユーザーインターフェイスを方法の详细について,,应用设计师ををし开発开発开発を参照しください。
このユーザーに,を制御制御するとオフオフのスイッチが含ま含まれれてていいます。。。。スイッチ[on]の[on]のののの位置位置にある场合场合场合场合)のいずれモードでが光り。の速さは,[眨眼率]スライダースライダーをて制御しし
ファイルsf_lamp_logic.sfx
sateflowはインターフェイススタンドスタンドアロンアロンアロンののののチャートチャートチャート定义します。。チャートにには,,(ON
,离开
,眨眼
および坚硬的
)とローカル(延迟
および应用程序
) が含まれています。チャート内のアクションは、各ステートからどのウィジェットにアクセス可能かを制御します。たとえば、离开
ステートので,ユーザーインターフェイスの,,[模式]オプション[blink速率]スライダースライダーグレー表示ますます。。。
在
ステートではサブステート坚硬的
とBlinking
2つのつのをます。点灭ランプ実装するために,チャート时相论时相论后
に依存ます。チャートステートステート眨眼
に入る,出力迁移式式(延迟,秒)之后)
は,后チャートを実行するするタイマータイマーオブジェクト作成ます。その后后ステートステートステートステート眨眼睛。在
に迁移し,眨眼
に戻る遷移をトリガーする別のタイマー オブジェクトを作成します。チャートが 2 つのステートの間で遷移を続ける間、ローカル データ遅延の値を変更して点滅の速さを調整したり、入力イベント坚硬的
または离开
を呼び出し点灭から迁移を実行たりできます。
在
のジャンクション,直近でアクティブだったステート关する关する保持ししてて,,,ランプランプをオンオンにしたときときにユーザーユーザーインターフェイスインターフェイスが前
matlabコマンドでイベントを呼び出すこと,スタンドアロンの実行実行stateFlowエディターstateFlowエディターエディターエディターエディターには,,チャートチャートアニメーションをを使用使用しししてててアクティブステートステートステートををされます。
1.状态流エディターでアロンチャートを开き。。
编辑sf_lamp_logic.sfx
2.チャートオブジェクトl
を作成して延迟
の値を 0.5 に初期化します。この値は 1 秒あたり 1 回の点滅速度に対応します。
l = sf_lamp_logic('延迟',0.5);
3.ランプをにし。。
在(l)上
4.点灭モードにます。
眨眼(L)
5。延迟
0.25ににします。この値値はははは秒秒秒秒秒回回点灭速度にに対応。。
l.delay = 0.25;
6.点灯モードにます。
坚硬的(L)
7.ランプをにします。
关闭(l)
8.チャートオブジェクトl
をmatlabワークワークスペース削除し。。。
删除(l)
ユーザー インターフェイスとスタンドアロンの Stateflow チャートの間に双方向接続を確立するには、App Designer ウィンドウを開いて[コード]を选択し。
1.应用设计师ウィンドウウィンドウ,,,チャートチャートへのを保存するのプロパティプロパティ层相
を作成し。
properties (Access = private) lampLogic结尾
2.チャートオブジェクト作成てそのデータデータ应用程序
をユーザーハンドルに设定关数关数StartupFcn
を作成ます。チャートをを层相
プライベート プロパティに割り当てます。
组件创建后执行的%代码功能startupfcn(app)app.lamplogic = sf_lamp_logic('延迟',0.5,'应用程序',应用程序);结尾
3.ユーザーインターフェイスたときチャートオブジェクト削除する关数关数closerequestfcn
を作成し。
%关闭请求功能:uifigure功能UIFigureCloseRequest(app, event) delete(app.lampLogic); delete(app);结尾
4.ユーザーのごと,アロンの适切なイベントを呼び出すコールバック关数を追加しし。
切换ウィジェットウィジェットコールバック关数Valuechangedfcn
:
功能switchvaluechanged(app,event)value = app.switch.value;switch较低(值)案子'离开'OFF(app.lamplogic);案子'上'在(app.lamplogic)上;结尾结尾
模式按钮ウィジェットウィジェットコールバック关数SelectionChangedFCN
:
功能ModeButtongRoupSelectionChanged(App,event)selectedButton = app.modebuttongroup.seledectectobject;如果app.solidbutton == selected button solid(app.lamplogic);别的眨眼(app.lamplogic);结尾结尾
眨眼率滑块ウィジェットウィジェット关数关数关数Valuechangedfcn
:
功能blinkrateslidervaluechanged(app,event)app.lamplogic.delay = round(0.5/app.blinkrateslider.value,2);结尾
ユーザーインターフェイスする,チャートキャンバスおよびウィジェット上で制御制御ウィジェットの调整のの效果效果ますますます