2012-05-03 10 views
0

私は太字、下線、イタリック、ハイライトなどのjface tableviwerに基本的なリッチテキストサポートを追加しようとしていますが、これをモデルに保存する必要があるため、サブセットを使用することもできますhtml(またはxml)タグのしかし、私はtableviewerでHTMLをレンダリングする方法を見つけることができないようです。私はStyledCellLabelProvierを見てきましたが、そのスタンドエリアはフォアグラウンドとバックグラウンドの色をサポートしていて、フォントとタイプはサポートしていないようです。htmlで基本的なリッチテキストサポートをjfaceテーブルビューアに追加しようとしていますか?

答えて

0

それはSWT TableでHTMLをレンダリングする必要になるので、あなたは、テーブルビューアでHTMLをレンダリングすることができない、とことは、すべてのサポートされるプラットフォームとウィンドウシステム上のテーブルでネイティブHTMLレンダリングを必要とします。

+0

[OK]を参照してくださいが、私はプラットフォームのサブセットをサポートする必要がありますし、SWTブラウザウィジェットがこれらのプラットフォームで確実に動作することは確かです。 –

+0

@dead_zeroそれは、 'テーブル'クラス自体がほとんど仕事をしないということです。すべてのレンダリングは、Win32テーブル、Cocoaテーブル、Gnomeテーブルなどのネイティブコントロールによって実行されます。これらは拡張できません。 –

1

StyleRangeのすべての公開フィールドをご覧ください。前景と背景色よりもはるかに多くのことがあります。ヒント:彼らはorg.eclipse.swt.graphics.TextStyleから継承されています。

+0

この設定を調べていただきありがとうございます。前景と背景の色は、魅力のように機能しますが、フォントスタイルはそうではありません。 'cell.setFont(boldFont) 'で太字にセルの内容全体を設定することはできますが、範囲上で同様のことをしようとすると太字のビット、つまりStyleRange(0,4、null、colorYellow、SWT.BOLD)を無視します。 (ウィンドウ7とOS xの両方)。 –

+0

'注意:フォント属性が設定されている場合、フォントスタイルは使用されません。' StyleRange'にフォント(fontStyleではなく)を設定しようとしましたか? – p12t

1

StyledCellLabelProviderによって呼び出され、テキストを描画するクラスは、StyleRangeではなくそのスーパークラスTextStyleを使用します。 fontStyleTextStyleの属性ではないため無視されます。 TextStyle.fontを明示的に設定します。

関連する問題