プロプログラマ

プログラマーを職業としてます。 Flex,Air,C#,Oracle,HTML+JSの言語ノウハウを中心に情報発信していきます

[Flex] spark:DataGridでセルに指定したtoolTip(DataTip)が正しく表示されないときがある

spark:DataGridのGridColumnにdataTipを指定した際、
実際にカーソルを合わせてもその位置のツールチップが表示されないことがあります。
違うセルのツールチップが表示されているようです。

最初は良くても、スクロールすると位置ずれが発生します。(ズレないこともあります。)
dataTipの表示更新がうまくできていないようです。

独自のitemRendererを指定したときにずれるようなのですが、使わないわけにもいきません。

GridItemRendererを継承したクラスを作ってitemRendererとして設定し、
dataプロパティ内でtoolTipにセットするようにすればとりあえず回避されました。
ただ、この書き方で良いのか微妙なところです。

かなり無理矢理な感じです。
パフォーマンスが悪化するかもしれません。

override public function set data(value:Object):void {
    super.data = value;

    if (value != null && column.dataTipField != null) {
         this.toolTip = column.dataTipFunction ? column.dataTipFunction(value, column) : value[column.dataTipField];
    }
}

ちなみに、
DefaultGridItemRendererを継承したitemRendererであれば、
上記問題は起こりませんでした。

 

== ランキングに参加しています。ぜひクリックお願いします ==

プログラム ブログランキングへ
にほんブログ村 IT技術ブログへ
にほんブログ村

, ,

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください