メイン・コンテンツまでスキップ

Toggle Button(トグル・ボタン)

TouchGFのToggle Buttonは、タッチ・イベントを認識するウィジェットで、Toggle Buttonがクリックされるとコールバックを送信します。 押下と解放の各状態は、画像と関連付けられます。 Toggle Buttonは、クリック時に2つのビットマップをスワップし、2つの状態間の切り替えをエミュレートするButtonです。

Toggle Buttonは、Flex Buttonによって再現できます。 Flex Buttonはさらに詳しい設定が可能なボタンで、柔軟性と引き換えにRAM使用量も少し多くなります。

シミュレータで実行されるToggle Button

ウィジェット・グループ​

Toggle Buttonは、TouchGFX DesignerのButtonsウィジェット・グループ内にあります。

TouchGFX DesignerのToggle Button

プロパティ​

TouchGFX DesignerのToggle Buttonのプロパティは以下のとおりです。

プロパティ・グループプロパティの説明
Nameウィジェットの名前。 Nameは、TouchGFX Designerおよびコードで使用される一意の識別子です。
LocationXおよびYは、装置の左上隅を指定します。

WおよびHは、ウィジェットの幅と高さを指定します。
Toggle Buttonのサイズは選択した画像のサイズによって決まります。

Lockは、ウィジェットを現在のX、Y、W、Hでロックするかどうかを指定します。
ウィジェットをロックすると、画面を介したウィジェットとの相互作用も無効にします。

Visibleは、ウィジェットの可視性を指定します。
ウィジェットを非表示にすると、画面を介したウィジェットとの相互作用も無効にします。
StyleStyleは、ウィジェットの事前定義のセットアップを指定します。選択プロパティが事前定義された値に設定されます。
これらのスタイルには、自由に使用できる画像が含まれています。
ImageReleased ImageおよびPressed Imageは、押下状態と解放状態に割り当てられる画像を、Designerのスキン・ライブラリまたはProjectフォルダから指定します。
AppearanceAlphaは、ウィジェットの透明度を指定します。
ウィジェットのアルファ値の範囲は0~255です。 0は完全に透明で、255は塗りつぶされた状態です。
MixinsDraggableは、実行時にウィジェットをドラッグ可能にするかどうかを指定します。

ClickListenerは、ウィジェットがクリックされたときにコールバックを発行するかどうかを指定します。

FadeAnimatorは、ウィジェットがAlpha値への変更をアニメーション化できるかどうかを指定します。

MoveAnimatorは、ウィジェットがXおよびY値への変更をアニメーション化できるかどうかを指定します。

インタラクション​

以下のセクションでは、Toggle Buttonによってサポートされるアクションとトリガについて説明します。

アクション​

標準のウィジェット・アクション説明
Move widget時間の経過に伴ってウィジェットを新しい位置に移動します。
Fade widget時間の経過に伴ってウィジェットのアルファ値を変更します。
Hide widgetウィジェットを非表示にします(可視性をfalseに設定します)。
Show widget非表示のウィジェットを表示します(可視性をtrueに設定します)。

トリガ​

トリガ説明
Button is clickedボタンがクリックされました。

パフォーマンス​

Toggle Buttonは2つの画像で構成され、画像描画に依存します。 このため、Toggle Buttonはほとんどのプラットフォーム上で高速処理のウィジェットであると見なされます。

画像描画のパフォーマンスの詳細については、「一般的なUIコンポーネントのパフォーマンス」セクションを参照してください。

例​

生成済みコード​

ビューの基底クラスの生成済みコードを見ると、TouchGFX DesignerによるToggle Buttonの設定方法がわかります。

Screen1ViewBase.cpp
#include <gui_generated/screen1_screen/Screen1ViewBase.hpp>
#include "BitmapDatabase.hpp"

creen1ViewBase::Screen1ViewBase() :
buttonCallback(this, &Screen1ViewBase::buttonCallbackHandler)
{
toggleButtonName.setXY(176, 117);
toggleButtonName.setBitmaps(touchgfx::Bitmap(BITMAP_BLUE_TOGGLEBARS_TOGGLE_ROUND_LARGE_BUTTON_OFF_ID), touchgfx::Bitmap(BITMAP_BLUE_TOGGLEBARS_TOGGLE_ROUND_LARGE_BUTTON_ON_ID));
toggleButtonName.setAction(buttonCallback);

add(ToggleButtonName);
}

void Screen1ViewBase::buttonCallbackHandler(const touchgfx::AbstractButton& src)
{
if (&src == &toggleButtonName)
{
//InteractionName
//When buttonName clicked calls the new virtual function "functionName()" set by the user
functionName();
}
}
Tip
ユーザ・コードでは、これらの関数や、ToggleButtonクラスで使用可能なその他の関数を使用できます。 ウィジェットの外観を変更する場合には、 toggleButtonName.invalidate() を呼び出して、再描画を行う必要があることを忘れないでください。

TouchGFX Designerの例​

Toggle Buttonをさらに探索するには、次のUIテンプレートを使用して、TouchGFX Designer内で新しいアプリケーションを作成してみてください。

TouchGFX DesignerのPool Demo UIテンプレート

API参照​