2011-11-07 7 views
0

HEREのようにtooltipManagerを使用しています。フレックス3 - カスタムツールチップを使用する

ボタンバーのボタンのカスタムツールチップを表示します。

のButtonBarの宣言は以下の通りである:ここまで

<mx:ButtonBar id="topToolbar" height="30" dataProvider="{topToolbarProvider}" 
      iconField="icon" itemClick="topToolbarHandler(event)" 
      buttonStyleName="topButtonBarButtonStyle" 
      toolTipField="tooltip"/> 

、すべてが正常に動作します。ツールチップに適切なテキストが表示されています。

はその後、私は以前に引用されたチュートリアルを使用して、カスタムツールチップマネージャを作成しました:私は問題を持ち始めるところ

public class TooltipsManager 
    { 
     private var _customToolTip:ToolTip; 

     public function TooltipsManager() 
     { 
     } 

     public function showToolTipRight(evt:MouseEvent, text:String):void 
     { 
      var pt:Point = new Point(evt.currentTarget.x, evt.currentTarget.y); 

      // Convert the targets 'local' coordinates to 'global' -- this fixes the 
      // tooltips positioning within containers. 
      pt = evt.currentTarget.parent.contentToGlobal(pt); 

      customToolTip = ToolTipManager.createToolTip(text, pt.x, pt.y, "errorTipRight") as ToolTip; 
      customToolTip.setStyle("borderColor", "0xababab"); 

      // Move the tooltip to the right of the target 
      var xOffset:int = evt.currentTarget.width + 5;//(customToolTip.width - evt.currentTarget.width)/2; 
      customToolTip.x += xOffset;   
     } 

     public function showToolTipAbove(evt:MouseEvent, text:String):void 
     { 
      var pt:Point = new Point(evt.currentTarget.x, evt.currentTarget.y); 

      // Convert the targets 'local' coordinates to 'global' -- this fixes the 
      // tooltips positioning within containers. 
      pt = evt.currentTarget.parent.contentToGlobal(pt); 

      customToolTip = ToolTipManager.createToolTip(text, pt.x, pt.y, "errorTipAbove") as ToolTip; 
      customToolTip.setStyle("borderColor", "#ababab"); 

      // Move tooltip below target and add some padding 
      var yOffset:int = customToolTip.height + 5; 
      customToolTip.y -= yOffset;  
     } 

     public function showToolTipBelow(evt:MouseEvent, text:String):void 
     { 

      var pt:Point = new Point(evt.currentTarget.x, evt.currentTarget.y); 

      // Convert the targets 'local' coordinates to 'global' -- this fixes the 
      // tooltips positioning within containers. 
      pt = evt.currentTarget.parent.contentToGlobal(pt); 

      customToolTip = ToolTipManager.createToolTip(text, pt.x, pt.y, "errorTipBelow") as ToolTip; 
      customToolTip.setStyle("borderColor", "ababab"); 

      // Move tooltip below the target 
      var yOffset:int = evt.currentTarget.height + 5; 
      customToolTip.y += yOffset;   
     } 

     // Remove the tooltip 
     public function killToolTip():void 
     { 
      ToolTipManager.destroyToolTip(customToolTip); 
     } 

     [Bindable] 
     public function get customTooltip():ToolTip { return _customToolTip; } 
     public function set customTooltip(t:ToolTip):void { _customToolTip = t; } 

    } 

は今、これは...
である私は、このカスタムツールチップを使用して取得しようとしていますしかし、私はボタンバーにそれを考慮に入れる方法を知らない。

私はTooltipsManager内の関数を呼び出すことができたときに表示する機能を作成しました:

public function showTopToolbarTooltip(e:ToolTipEvent):void{ 
      trace('blabla'); 
     } 

しかし、それを考慮したことがないだと思われます。私はこのボタンをさまざまなボタンバーのイベントに入れました:tooltipcreate、tooltipstart、tooltipendしかし何も起こりません。単一のトレースではありません...

私のtooltipManagerの機能をどこから呼び出すことができますか?

ありがとうございました。
敬具、
BS_C3

答えて

0

は実際には、マウスオーバー/アウトイベント...そのため申し訳ありませんに関数をアタッチ= _ =チュートリアルの一部をスキップ。

関連する問題