« UJMLサンプル017:コンポーネントの利用(メッセージボックス) | メイン | UJMLサンプル019:コンポーネントの利用(スクロールメニュー) »

UJMLサンプル018:コンポーネントの利用(パッドボタン)(2006/02/03)

Samples_018_component_padbuttons小型デバイスというともっとも身近なものは携帯電話だが、電話の持つ
1 2 3
4 5 6
7 8 9
* 0 #
のボタンを描画してくれるのがこのpadbuttons.ujmsだ。非常にありがたい。このファイルもSDKのサンプルのcomponentsフォルダに入っている。

サンプルソース中ではshowメソッドでボタンを表示しているが、このメソッドの引数は極めて多い(20個以上)。そのため最初の13個の引数は定数(PAD_BUTTON_SETTINGS)にしソースコードを見やすくしている。残りの引数は12個のボタンそれぞれに表示する文字を指定するためのものだ。

padbuttons.ujmsはSDKサンプル中にあるsettings.ujmlで使用されている。このソースを見ると、showメソッド用の最初の引数13個を定数にするメリットがよくわかる。

動作サンプル
http://pts.app.uievolution.com/pubserv/vfs/1327/com.uiengineda.samples018.html
※最初にF2を押すとボタンが表示される。
※動作にはJAVA Runtimeが必要

---コード
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ujml PUBLIC "-//UIEVOLUTION//DTD UJML 1.5//EN"
"http://www.uievolution.com/dtd/ujml-1.5.dtd" [
    <!ENTITY PAD_BUTTON_SETTINGS '
    0, 0, _getIntProperty(&_PROPERTY_INT_SCREEN_WIDTH;) / 2,_getIntProperty(&_PROPERTY_INT_SCREEN_HEIGHT;) / 2,
    &_COLOR_BLUE;, &_COLOR_SILVER;, &_COLOR_BLACK;, &_COLOR_BLUE;,
    &_COLOR_WHITE;, &_COLOR_BLUE;, &_FONT_SIZE_SMALL;,
    &_FONT_STYLE_PLAIN;, &_FONT_FACE_SYSTEM;
    '>
]>
<!-- http://uiengineda.blogs.com -->
<ujml>
    <application>
        <state-machines>
            <include file="components/padbuttons.ujms" state-machine="PadButtons" />
        </state-machines>
        <display>
            <fn>
                <text>PadButtons</text>
                <event name="onSelect">
                    <accelerators>
                        <key>F2</key>
                    </accelerators>
                    <script>
                        PadButtons.show(&PAD_BUTTON_SETTINGS;,
                            "A", "B", "C",
                            "D", "E", "F",
                            "G", "H", "I",
                            "J", "K", "L");
                    </script>
                </event>
            </fn>
        </display>
    </application>
</ujml>

トラックバック

この記事のトラックバックURL:
https://www.typepad.com/services/trackback/6a00d8341c2e2e53ef00e550a964c28834

UJMLサンプル018:コンポーネントの利用(パッドボタン)を参照しているブログ:

コメント

この記事へのコメントは終了しました。