無線通信エンジニアの備忘録

無線通信だったり、ITだったり、仕事で覚えた専門知識の備忘録

MATLABのAppDesignerでGUIアプリを作る (2)テキストエリア

こんにちは。

今回もAppDesignerの基本的な使い方を抑えるための備忘録です。

第1回の前回は「ボタン」の使い方を解説しました。
taekwongineer.hatenablog.jp


第2回の今回は


テキストエリア



です。


では早速行きましょう。


●この記事の目次

1.GUI部品の配置

前回同様、まずはAppDesignerを起動し、空のWindow画面にテキストエリアのGUI部品をドラッグ&ドロップで配置します。(図1)



図1 テキストエリア部品の配置

テキストエリア部品を置くと、空のテキストエリアとテキストエリアのタイトル等を示すためのラベル(TextArea)がセットで配置されます。

更に今回は動作確認のために前回解説した「ボタン」も使用します。(図2)



図2 ボタンも設置


そして、テキストエリアには初期値のテキストを入力しておきます。(図3)



図3 テキストエリアに初期値を入力


次にコードビューで「テキストエリア」のオブジェクト定義のコードを見てみましょう。(図4)



図4 オブジェクト定義のコード


テキストエリアのGUI部品を設置すると、オブジェクトとしてはTextAreaとTextAreaLabelの2つが定義されるようです。


2.コールバック関数の定義

次にテキストエリアのGUI部品用に用意されているコールバック関数の使い方を確認していきたいと思います。

テキストエリアのコールバック関数は図5のように
・ValueChangingFcn
・ValueChangedFcn
の2種類が定義されています。

その名の通り、ValueChangingFcnはテキストエリアの編集開始時に呼び出され、ValueChangedFcnはテキストエリアの編集完了後に呼び出される関数となります。



図5 テキストエリアのコールバック関数


次にこれらのコールバック関数のデフォルトのコードを見てみましょう。(図6)



図6 テキストエリアのコールバック関数のコード


それぞれの関数にデフォルトでchangingValue、valueという変数が定義されていますが、これらには関数呼び出し時のテキストエリアに書き込まれているテキストの内容が格納されます。


では、このデフォルトのコールバック関数に動作確認用のコードを追記していきましょう。(図7)



図7 テキストエリアのコールバック関数のコード

今回はテキストエリアの編集を開始すると、TextAreaValueChanging関数が呼びされ、テキストエリアのラベルに「Changing」を表示し、テキストエリアの編集完了後には、TextAreaValueChanged関数が呼び出され、テキストエリアのラベルに「Changed」を表示するようにしました。

また、Button1およびButton2のクリック時には、テキストエリアに「Good Morning!!」、「Hello World!!」をそれぞれ表示するようにしました。

3.動作確認

ここまで作成が完了したら早速動作確認してみましょう。
youtu.be

テキストエリアの編集時にラベルの表示が変化するのが確認できます。

またボタンのクリックによってもテキストエリアの内容が変わるのが確認できますね。

4.まとめ

今回は「テキストエリア」の使い方を解説しました。
今回もそんなに難しくはありませんでしたね(;^_^A

次回は何にしようかはまだ検討中です。
決まったらブログ更新します。(;^_^A