特定の行に対して選択した背景色をjface tableviewerに表示させるにはどうすればよいですか? 各行にタイムスタンプがあり、タイムスタンプが月曜日にある行に、他の行とは異なる色を付けるのが好きです。
5126 次
2 に答える
4
ColumnLabelProvider を使用すると、さらに簡単になります。
col.setLabelProvider(new ColumnLabelProvider() {
@Override
public Color getBackground(final Object element) {
if (element instanceof YourClass) {
if (((YourClass) element).shouldBeRed()) {
return new Color(Display.getDefault(), 0xFF, 0xDD, 0xDD);
}
}
return super.getBackground(element);
}
});
もちろん、getBackground ごとに新しい色を作成するのではなく、そのためにリソース マネージャーを使用する必要があります。
于 2014-02-27T16:24:22.483 に答える
0
次の行の何か:
col.setLabelProvider(new ColumnLabelProvider() {
@Override
public void update(final ViewerCell cell) {
YourRowItemClass rowItem = (YourRowItemClass) cell.getElement();
if (rowItem.isMonday()) {
cell.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_DARK_GREEN));
}
}
});
于 2013-06-02T11:27:24.820 に答える