LoginSignup
0
0

More than 1 year has passed since last update.

Apache Flexのコンポーネントの作り方

Last updated at Posted at 2021-08-18

はじめに

Apache Flexで独自のコンポーネント(カスタムコンポーネント)を作成します。
例として、「Hello XXX」と表示するだけの簡単なコンポーネントを作成します。
また、作成したコンポーネントを利用する方法を書きます。

コンポーネントの作成

HelloLabel.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
         xmlns:s="library://ns.adobe.com/flex/spark">
    <fx:Script>
        <![CDATA[
            [Bindable]
            public var yourName:String;
        ]]>
    </fx:Script>
    <s:Label text="Hello {yourName}" />
</s:Group>

「Hello XXX」と表示するためのコンポーネントを作成します。
mxmlのファイル名の「HelloLabel」の部分がコンポーネントの名前になります。
yourName属性に指定された値によって、XXXの部分の表示が変わるようにしています。

作成したコンポーネントの利用方法

Screenshot from 2021-08-18 11-21-25.png

Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                       xmlns:s="library://ns.adobe.com/flex/spark"
                       xmlns:c="*"
                       width="400" height="300">

    <fx:Style>
        * { 
            font-family: "Meiryo";
        }
    </fx:Style>

    <!-- 作成したコンポーネント -->
    <c:HelloLabel left="10" top="10" yourName="World"/>

</s:WindowedApplication>

コンポーネントのmxmlファイルが同じフォルダーにある場合、s:WindowedApplicationタグでxmlns:c="*"のように指定します。
(もし、componentsフォルダーを作って、そこにコンポーネントのmxmlファイルを格納した場合は、xmlns:c="components.*"のように指定します)

利用したい箇所で、c:HelloLabelタグを記載することで、作成したコンポーネントを利用できます。

今回、xmlns:cにしていますが、「c」の部分は、任意の文字列を指定できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0