Flex-titlewindow

提供:Dev Guides
移動先:案内検索

フレックス-TitleWindow

前書き

TitleWindowクラスは、閉じるボタンと移動領域を含むようにPanelクラスを拡張します。

クラス宣言

以下は spark.components.TitleWindow クラスの宣言です-

public class TitleWindow
   extends Panel

パブリックメソッド

Sr.No Method & Description
1

TitleWindow()

コンストラクタ。

イベント

Sr.No Event & Description
1

close

ユーザーが閉じるボタンを選択したときに送出されます。

2

windowMove

ユーザーがウィンドウを正常にドラッグした後に送出されます。

3

windowMoveEnd

ユーザーがドラッグ後にマウスボタンを離したときに送出されます。

4

windowMoveStart

ユーザーが移動領域でマウスボタンを押したままにして、ウィンドウのドラッグを開始すると送出されます。

5

windowMoving

ユーザーがウィンドウをドラッグしたときに送出されます。

継承されるメソッド

このクラスは、次のクラスからメソッドを継承します-

  • spark.components.Panel
  • spark.components.SkinnableContainer
  • spark.components.supportClasses.SkinnableContainerBase
  • spark.components.supportClasses.SkinnableComponent
  • mx.core.UIComponent
  • mx.core.FlexSprite
  • flash.display.Sprite
  • flash.display.DisplayObjectContainer
  • flash.display.InteractiveObject
  • flash.display.DisplayObject
  • flash.events.EventDispatcher
  • 対象

Flex TitleWindowの例

テストアプリケーションを作成して、FlexアプリケーションでTitleWindowの使用を確認するには、次の手順に従います。

ステップ1 –プロジェクトを作成する

_Flex-アプリケーションの作成_の章で説明されているように、_com.finddevguides.client_パッケージの下に_HelloWorld_という名前のプロジェクトを作成します。

ステップ2 –カスタムタイトルウィンドウコンポーネントを作成する

オプション File> New> MXML Component を使用して、MXMLコンポーネントの作成ウィザードを起動します。

Flex新しいコンポーネントウィザード

*com.finddevguides.client* としてパッケージを入力し、 *CustomTitleWindow* として名前を付け、既存のflex TitleWindowコントロール *spark.component.TitleWindow* に基づいて選択します。 下記のように修正しました。

以下は、変更されたmxmlファイル src/com.finddevguides.client/CustomTitleWindow.mxml の内容です。

<?xml version = "1.0" encoding = "utf-8"?>
<s:TitleWindow xmlns:fx = "http://ns.adobe.com/mxml/2009"
   xmlns:s = "library://ns.adobe.com/flex/spark"
   xmlns:mx = "library://ns.adobe.com/flex/mx" width = "400" height = "300"
   title = "Title Window Container" close = "PopUpManager.removePopUp(this);">
   <s:layout>
      <s:VerticalLayout verticalAlign = "middle" horizontalAlign = "center"/>
   </s:layout>

   <fx:Script>
      <![CDATA[
         import mx.managers.PopUpManager;
      ]]>
   </fx:Script>
   <s:Label text = "Content area of title window"/>
</s:TitleWindow>

ステップ3 – HelloWorld.mxmlを変更する

以下に説明するように、_HelloWorld.mxml_を変更します。 残りのファイルは変更しないでください。

以下は、変更されたmxmlファイル src/com.finddevguides/HelloWorld.mxml の内容です。

<?xml version = "1.0" encoding = "utf-8"?>
<s:Application xmlns:fx = "http://ns.adobe.com/mxml/2009"
   xmlns:s = "library://ns.adobe.com/flex/spark"
   xmlns:mx = "library://ns.adobe.com/flex/mx
   width = "100%" height = "100%" minWidth = "500" minHeight = "500">

   <fx:Style source = "/com/finddevguides/client/Style.css"/>
   <fx:Script>
      <![CDATA[
         import mx.core.IFlexDisplayObject;
         import mx.managers.PopUpManager;

         private function showWindow():void {
            var popUp:IFlexDisplayObject =
               PopUpManager.createPopUp(this,CustomTitleWindow,true);
            PopUpManager.centerPopUp(popUp);
         }
      ]]>
   </fx:Script>

   <s:BorderContainer width = "630" height = "480" id = "mainContainer"
      styleName = "container">
      <s:VGroup width = "100%" height = "100%" gap = "50"
         horizontalAlign = "center" verticalAlign = "middle">
         <s:Label id = "lblHeader" text = "Layout Panels Demonstration"
            fontSize = "40" color = "0x777777" styleName = "heading"/>

         <s:Panel id = "titleWindowPanel" title = "Using TitleWindow"
            width = "500" height = "300">

            <s:layout>
               <s:VerticalLayout  gap = "10" verticalAlign = "middle"
                  horizontalAlign = "center"/>
            </s:layout>

            <s:Button id = "showButton"
               label = "Click to show the TitleWindow container"
               click = "showWindow();"/>
         </s:Panel>
      </s:VGroup>
   </s:BorderContainer>
</s:Application>

ステップ4 –アプリケーションのコンパイルと実行

アプリケーションをコンパイルして実行し、要件に従ってビジネスロジックが機能していることを確認します。

すべての変更が完了したら、link:/flex/flex_create_application [Flex-アプリケーションの作成]の章で行ったように、アプリケーションを通常モードでコンパイルして実行します。 アプリケーションに問題がなければ、次の結果が生成されます。[link:/flex/samples/LayoutsApplicationl#currentlyLoaded = TitleWindow [オンラインで試す]]

Flex TitleWindow