2016-03-19 6 views
0

マウスのホバーで行スタイルを更新しようとしています。プログラムでGWT CellTableの行スタイルを更新する

mappings.getRowElement(event.getValue().getExecutionOrder()).getStyle().setBorderColor("Red"); 

は効果がありません、なぜ

mappings.getRowElement(event.getValue().getExecutionOrder() - 1).getInnerText()); 

任意のアイデアを:私は使用して成功した行の内容を取得することができるよヲ

mappings.addCellPreviewHandler(new Handler<MappingInstructionVO>() { 

     @Override 
     public void onCellPreview(CellPreviewEvent<MappingInstructionVO> event) { 
     if (BrowserEvents.MOUSEOVER.equals(event.getNativeEvent().getType())) { 
      mappings.getRowElement(event.getValue().getExecutionOrder()).getStyle().setBorderColor("Red"); 
     } 
}); 

おかげ

答えて

1

DataGridがそのデフォルトDataGrid.Resourcesで定義されてdataGridHoveredRowスタイルを持っています。 1つの選択肢は、独自のClientBundleでこのスタイルをオーバーライドすることです。

あなたは "国境崩壊:崩壊" に設定する必要があります。あなたのデータグリッド上を

はそうでない場合は、

.getStyle().setProperty("border", "1px solid red"); 

EDITを試してみてください。 CSS2仕様から

:[ボーダー崩壊:別のモデル]で

、各セルは、個々 境界を有しています。 [...]行、列、行グループ、列グループの境界線は、 の境界線を持つことはできません(つまり、ユーザーエージェントは 要素の境界線のプロパティを無視する必要があります)。

+0

あなたのお勧めは機能しませんでした。しかし、返信をありがとう。 私も試みました.getStyle()。setBorderStyle(BorderStyle.SOLID);私が持っているものに加えて、 でも動作しませんでした。 – EMM

+0

便利な場合は、リンクを提供することもできますか?実際には、すべてのプロパティがサポートされているかどうかを確認したい。ボーダーがサポートされていない場合、ボックスシャドーを追加したいと思います。 – EMM

+0

"CSS2仕様"、Googleでの最初の結果。表の境界線については、https://www.w3.org/TR/CSS2/tables.html#borders –

関連する問題