HRule コントロールと VRule コントロール

HRule (Horizontal Rule) コントロールは水平方向の罫線を、VRule (Vertical Rule) コントロールは垂直方向の罫線を作成するものです。一般に、この 2 つのコントロールは、コンテナ内に境界線を引くときに使用します。

次の図に HRule コントロールと VRule コントロールの例を示します。


HRule および VRule コントロール

HRule コントロールと VRule コントロールには、次のデフォルトプロパティがあります。

プロパティ

デフォルト値

デフォルトサイズ

Horizontal Rule デフォルトの幅と高さは、それぞれ 100 ピクセルおよび 2 ピクセルになります。デフォルトでは、HRule コントロールのサイズは不変です。サイズ変更を有効にするには、widthheight にパーセント値を指定します。

Vertical Rule デフォルトでは、高さが 100 ピクセル、幅は 2 ピクセルになります。デフォルトでは、VRule コントロールのサイズは不変です。サイズ変更を有効にするには、widthheight にパーセント値を指定します。

strokeWidth

2 ピクセル

strokeColor

0xC4CCCC

shadowColor

0xEEEEEE

サブトピック

HRule コントロールと VRule コントロールの作成 363
HRule コントロールと VRule コントロールのサイズ 365
スタイルプロパティの設定 366

HRule コントロールと VRule コントロールの作成

HRule コントロールと VRule コントロールは、次のように、<mx:HRule> タグおよび <mx:VRule> タグを使用して MXML 内で定義します。MXML の他の場所 (別のタグまたは ActionScript ブロック) のコンポーネントを参照する場合は、id 値を指定します。

<?xml version="1.0"?>
<!-- controls\rule\RuleSimple.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:VBox>
        <mx:Label text="Above"/>
        <mx:HRule/>
        <mx:Label text="Below"/>
    </mx:VBox>
    <mx:HBox>
        <mx:Label text="Left"/>
        <mx:VRule/>
        <mx:Label text="Right"/>
    </mx:HBox>
</mx:Application>

この例では、前出の図のような出力結果が生成されます。

次の例のように、HRule コントロールと VRule コントロールのプロパティを使用して、線幅、線のカラー、陰影色などを指定することもできます。

<?xml version="1.0"?>
<!-- controls\rule\RuleProps.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:VBox>
        <mx:Label text="Above"/>
        <mx:HRule shadowColor="0xEEEEEE"/>
        <mx:Label text="Below"/>
    </mx:VBox>
    <mx:HBox>
        <mx:Label text="Left"/>
        <mx:VRule strokeWidth="10" strokeColor="0xC4CCCC"/>
        <mx:Label text="Right"/>
    </mx:HBox>
</mx:Application>

このコードでは、次のイメージが作成されます。


線幅を持つ HRule コントロールと VRule コントロール

HRule コントロールと VRule コントロールのサイズ

HRule コントロールと VRule コントロールでは、罫線の描画方法が strokeWidth プロパティによって次のように決定されます。

次の例に、この 3 つのパターンで描画した結果を示します。


HRule および VRule コントロールのサイズ

HRule コントロールの height プロパティに、strokeWidth プロパティを超える値を設定した場合、罫線は指定された高さの矩形内に描画され、矩形の中央に配置されます。罫線の高さは、strokeWidth プロパティに指定した高さになります。

VRule コントロールの width プロパティに、strokeWidth プロパティを超える値を設定した場合、罫線は指定された幅の矩形内に水平に描画され、矩形の中央に配置されます。罫線の幅は、strokeWidth プロパティに指定した幅になります。

HRule コントロールの height プロパティまたは VRule コントロールの width プロパティに、strokeWidth プロパティより小さい値を設定した場合は、strokeWidth プロパティが height プロパティまたは width プロパティと等しいものとして罫線が描画されます。

メモ

 

height プロパティと width プロパティをパーセント値で指定した場合、実際のピクセル値は、height プロパティと width プロパティを strokeWidth プロパティと比較する前に計算されます。

HRule コントロールと VRule コントロールの色は、strokeColor プロパティと shadowColor プロパティによって決定されます。strokeColor プロパティでは、次のようにして線の色が指定されます。

shadowColor プロパティでは、次のようにして線の陰影色が指定されます。

スタイルプロパティの設定

strokeWidthstrokeColorshadowColor は、スタイルのプロパティです。したがって、タグの定義の一部として MXML を設定することも、MXML の <mx:Style> タグを使って設定することもできます。あるいは、ActionScript から setStyle() メソッドを使って設定することも可能です。

次の例では、<mx:Style> タグを使って、すべての HRule コントロールの strokeColor プロパティと shadowColor プロパティに、デフォルト値として、それぞれ #00FF00 (ライムグリーン) と #0000FF (青) を設定しています。この例では、strokeWidth を 5 に設定した、thickRule というクラスセレクタを定義しています。次の例のように、HRule コントロールまたは VRule コントロールのあらゆるインスタンスに使用できます。

<?xml version="1.0"?>
<!-- controls\rule\RuleStyles.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Style>
        .thickRule {strokeWidth:5}
        HRule {strokeColor:#00FF00; shadowColor:#0000FF}
    </mx:Style>

    <mx:HRule styleName="thickRule"/>
</mx:Application>

この例では、次のイメージが作成されます。


<mx:Style> タグを使用した HRule コントロール<Default Para Font>


Flex 2.01