2009-06-26 2 views
2

Как SWT разрабатывает способы масштабирования изображений в таблице?как я могу правильно изменить масштаб изображения jable ITableTabelProvider

Я использую ITableLabelProvider для предоставления изображений для таблицы SWT.

Я недавно расширил столбцы таблицы от 140 до 170, и я расширил объект Image, переданный от ITableLabelProvider.

SWT теперь масштабирует это 170-пиксельное изображение до 140 пикселей и отображает 30 пикселей пустого текста с правой стороны. Я вынул все ссылки на старую ширину, о которой я знаю.

Другие ячейки содержат только текст, и они ведут себя совершенно правильно. Ширины TableItem, Column и Image определенно все 170.

Я запускаю swt3.3 и jface 3.4.2 в Windows XP.

У меня есть обходное решение, которое прослушивает события SWT.PaintItem в таблице, а затем рисует изображение непосредственно в контекст графического объекта Paint. Это похоже на трюк, но его действительно беспокоит, что я не понимаю, как сделать более элегантное решение.

ответ

3

Теперь я понимаю.

посмотреть на этом http://dev.eclipse.org/newslists/news.eclipse.platform.swt/msg15042.html

Первое изображение вставляется в столбец таблицы будет определять размеры всех других изображений, вставленных в этот столбец таблицы.

В тихом и труднодоступном для отладки смысле. Вы просто должны знать секрет.

Я добавил 30 пикселей пробела к первому изображению, добавленному в таблицу, и теперь он работает отлично.

Смежные вопросы